Vim has an auto-complete mechanism but it's not as sophisticated as what you get with VStudio. For example if it won't do context sensitive variable name completion (i.e. display the name of the member function of a variable after the dot or -> operator).
No compile and highlight errors as you type
No parameters of method names as you fill them in
However judging from your post you seem to be describing a language centric IDE, an IDE that caters for a few languages well.
I work on embedded systems and there is no windowing system. All I have is an ssh connection and a terminal. I use Vim for development because it lets me work anywhere and can handle all sorts of languages (Bash Python, C/C++). Could I do what I do with a conventional IDE style editor? Yes for a specific language, but then I'd have to be scping my changes over to the target box. Using Vim on the target box saves me the scping step. Some of my colleagues use IDE's to do their programming but when they have no other option and have to ssh into a machine to edit/compile/run there are not may options other than Vim or Emacs. Case in point was when diagnosing a box at Homeland Security from a remote location. Knowing how to use Vim was highly useful in that case. Being able to use Vim or Emacs over an ssh connection is probably the biggest benefit you can leverage out of those editors.
Yeah that's right C++ can't match C. It outperforms it. The STL sort function is faster than qsort http://gamma.cs.unc.edu/GPUSORT/results.htmlhttp://gamma.cs.unc.edu/GPUSORT/results.html. I'll leave it to you to figure out why this is true but it has to do with the extra type information you can embed when using templates in C++. I'm willing to bet that a library written in C++ using expression templates, like Boost::uBlas or VSIPL++ will be faster than an equivalent C implementation. Anyway arguing for C based on it's performance against C++ is daft and it annoys me that people still do. Also read this http://scienceblogs.com/goodmath/2006/11/the_c_is_ efficient_language_fa.php. He makes some good points about what C and C++ is good at (mucking with memory addressese) and not good at (numeric computation, efficient optimized code). Now go tell your programmers at your company to use the STL sort because it's faster.
web vastu is pretty fucking ugly
on
Slashdot's Vastu
·
· Score: 1
This site is nothing appealling - http://www.webvastu.com/. Brown and yellow is ugly and the gradient shading makes it feels tacky.
But, being able to express an algorithm purely, which will compile efficiently to process *any* type(s), stored in *any* container, accross *any* architecture, with full static type checking and bare-metal hand-coded assembly language efficiency, is something truly unique in the programming language world today.
Just a few notes for comparison
Haskell does this but lacks the efficiency. Its type system is as expressive as C++ templates.
Python also does this but type checking is dynamic.
Java and C# have 'generics' which is basically pinching the C++ templates. I don't think Java or C# support the notion of partial specialization. They seem to be languages that follow C++.
But yeah I think your comment basically sums up why C++ kicks ass.
nuff said. the reality is dynamic linking causes more problems than it solves. the argument about it saving space is 'blah' (i.e. true but irrelevant).
Re:Let me know when it stops sucking
on
GCC 4.1 Released
·
· Score: 1
If it said 'your code is ugly' it was probably right. Chances are you wrote some bad incorrect code.
I should have spaced that better:
Hurtswhen Ipee
Fertill Lyzemee
Icesuk Peenus
I use these names on Guild Wars and nobody complains. Ok someone wouldn't let me join their guild because of the last name but they were probably gay anyway.
I thought CmdrTaco is an innocuous name. It's pretty lame of Blizzard to change your name. It's your character for fuck sakes, and your name. I'd dump WoW or any MMORPG I was playing if they wanted me to change my name. These are the names of some of my characters and I geting away with it for the moment:
Hurtswhen Ipee
Fertill Lyzemee
Icesuk Peenus
Hmmm...I have the same problem with Vim's buffer completion that he has with VS Intellisense. In order for it to work it requires that the name of the function or variable be in a buffer that is open. This imposes a bottom up programming approach on me and makes me dumb.
Re:emacs and vim are too difficult to use
on
Vim 6.4 Released
·
· Score: 1
I ended up using Vim but it wasn't out of habit. I wanted to learn the Linux environment and was a hardcore Windows user for years previously. I'd written programs using the Win32 API and Symantec 7.5 (back in 1997 when Symantec produced a C++ compiler). I moved to VC++ 6 then 7.1 a few years later. By this time I was using primarily keyboard shortcuts within the IDE to edit code and hardly ever used the mouse unless laying out a GUI. Then in 2003 I decided to install Linux and give it a go. I went for one of the more 'advanced' distro's (Gentoo) and tried various editors (NEdit, Vim, emacs). I was frustrated and liked nothing. So I decided to through myself in the proverbial deep end and started using Vim. I use h,j,k,l to move around and now am fairly proficient with it (e.g. I know 6 or more ways to go into insert mode). I haven't looked back and have not needed to change editors. I guess my point is it was not out of habit that I started using Vim. It was more out of a sense of frustration with the editors on Linux and a desire to punish myself with something difficult so that at the end of the day I might come out stronger.
How's the lighting meant to work if the extraneous triangles are removed from flat surfaces? You'll end up with shading that isn't very pleasing to look at. You need those extra triangles, even though you can't see them and the surface is relatively flat, if you want the model to look nicely shaded.
They reported this to the Windows developers, who disassembled SimCity, stepped through it in a debugger, found the bug, and added special code that checked if SimCity was running, and if it did, ran the memory allocator in a special mode in which you could still use memory after freeing it.
The Windows team added special case code to run allow SimCity to run! That's an incredible effort.
'Those who can't do teach:)'.
It's unlikely that there is much communication between the people in systems support who are in charge of implementing the system and academics in the Comp Sci dept. Also the purpose of being an academic is not teaching. Academics don't get raises based on the quality of their teaching. They get promoted based on their research, which basically amounts to having papers published in respectable journals like SIGGRAPH.
I have run spybot - it picked up blazefind - got rid of it but a week later the thing came back. Also I'm pretty sure windows update is broken since it keeps wanting to download and install the same update.
I have a dual boot machine (WinXP/Gentoo) and I want to ditch the WinXP part for the following reasons:
Everytime it boots up it says there's an error on my hardrive and needs to run scandisk. It runs and finds no errors.
A shitty spyware thing called Blazefind has crept onto my machine and everytime it boots up, it switches on the search assistant at the bottom of my taskbar.
It's slow to startup because I use mozilla as my browser/mail client.
To be fair though it has run without a problem for about 3 years. The scandisk problem only started recently.
The truth about doing a PhD or MSc is that you don't get credit for the code you right. Bad code + good theisis == good mark. Good code + bad thesis == bad mark. Sad but true.
The result of this is that generally people who spend their time doing a PhD and not involving themselves in industrial level code development, i.e. as a part time job or via one of the Open Source projects, won't have any practice reading and chewing through other peoples code. They won't have any experience writing and maintaining a significantly large code base. These are important skills to have for any coding job, and is something that's neglected in academia.
I've also had the misfortune of having to work with some code a PhD guy wrote that was rife with bad variable names, and memory leaks and magic numbers.
I've worked on a 5 year old code base where the I think the highest qualification was an MSc and there weren't any libraries or clear boundaries between the parts of the system.
In my experience, I haven't been able to draw any absolute conclusions about the quality of code that comes from people with or without higher qualifications. I've seen bad work come from people with PhD's, I've seen good work come from people with PhD's and I've seen excellent work come from people with PhD's (for example http://ode.org/, and google)
So in conclusion I propose this loose formula for assessing the quality of a candidate:
Writes good code + minimal qualification == fine
Writes bad code + any qualification == bad
Writes good code + higher level qualification == best
If you value time with family more than a career consider a job as a university lecturer.
The pros are:
- write code how you want
- work on stuff you want to research, not what someone else tells you to do.
- more free time, less stress.
Cons:
- Salary isn't good compared to commerce
- Pay rises are dependent on the quality of the papers you publish (unlike the commercial work force academics earn their pay based on academic merit)
- You really need a PhD to be considered for a post.
For the GUI I use xrced. When making a GUI it's better to use sizers to layout the GUI and avoid absolute positions. This ensures that the app will look good and widgets won't overlap on any platform.
For coding I currently use vim. I've used boa before and found it fine for writing python code. It didn't support sizers at the time though.
Disney can't do superheroes...
on
Shrek 2 How-To
·
· Score: 1
Disney can't do superheroes. They do quacking ducks and silly mice and goofy and pluto and all those super friendly type of characters. But superheroes? The type that get pounded through several floors of concrete, and rise up shaking off the dust and mutter stoically 'That hurt a bit'. That's Marvel's job.
Vim has an auto-complete mechanism but it's not as sophisticated as what you get with VStudio. For example if it won't do context sensitive variable name completion (i.e. display the name of the member function of a variable after the dot or -> operator). No compile and highlight errors as you type No parameters of method names as you fill them in However judging from your post you seem to be describing a language centric IDE, an IDE that caters for a few languages well. I work on embedded systems and there is no windowing system. All I have is an ssh connection and a terminal. I use Vim for development because it lets me work anywhere and can handle all sorts of languages (Bash Python, C/C++). Could I do what I do with a conventional IDE style editor? Yes for a specific language, but then I'd have to be scping my changes over to the target box. Using Vim on the target box saves me the scping step. Some of my colleagues use IDE's to do their programming but when they have no other option and have to ssh into a machine to edit/compile/run there are not may options other than Vim or Emacs. Case in point was when diagnosing a box at Homeland Security from a remote location. Knowing how to use Vim was highly useful in that case. Being able to use Vim or Emacs over an ssh connection is probably the biggest benefit you can leverage out of those editors.
Yeah that's right C++ can't match C. It outperforms it. The STL sort function is faster than qsort http://gamma.cs.unc.edu/GPUSORT/results.html http://gamma.cs.unc.edu/GPUSORT/results.html. I'll leave it to you to figure out why this is true but it has to do with the extra type information you can embed when using templates in C++. I'm willing to bet that a library written in C++ using expression templates, like Boost::uBlas or VSIPL++ will be faster than an equivalent C implementation. Anyway arguing for C based on it's performance against C++ is daft and it annoys me that people still do. Also read this http://scienceblogs.com/goodmath/2006/11/the_c_is_ efficient_language_fa.php. He makes some good points about what C and C++ is good at (mucking with memory addressese) and not good at (numeric computation, efficient optimized code). Now go tell your programmers at your company to use the STL sort because it's faster.
This site is nothing appealling - http://www.webvastu.com/. Brown and yellow is ugly and the gradient shading makes it feels tacky.
lol - that's just ridiculous.
Try reducing the number of hours infront of the screen. It should help your vision.
Haskell does this but lacks the efficiency. Its type system is as expressive as C++ templates.
Python also does this but type checking is dynamic.
Java and C# have 'generics' which is basically pinching the C++ templates. I don't think Java or C# support the notion of partial specialization. They seem to be languages that follow C++.
But yeah I think your comment basically sums up why C++ kicks ass.
nuff said. the reality is dynamic linking causes more problems than it solves. the argument about it saving space is 'blah' (i.e. true but irrelevant).
If it said 'your code is ugly' it was probably right. Chances are you wrote some bad incorrect code.
I should have spaced that better:
Hurtswhen Ipee
Fertill Lyzemee
Icesuk Peenus
I use these names on Guild Wars and nobody complains. Ok someone wouldn't let me join their guild because of the last name but they were probably gay anyway.
I thought CmdrTaco is an innocuous name. It's pretty lame of Blizzard to change your name. It's your character for fuck sakes, and your name. I'd dump WoW or any MMORPG I was playing if they wanted me to change my name. These are the names of some of my characters and I geting away with it for the moment: Hurtswhen Ipee Fertill Lyzemee Icesuk Peenus
Hmmm...I have the same problem with Vim's buffer completion that he has with VS Intellisense. In order for it to work it requires that the name of the function or variable be in a buffer that is open. This imposes a bottom up programming approach on me and makes me dumb.
I ended up using Vim but it wasn't out of habit. I wanted to learn the Linux environment and was a hardcore Windows user for years previously. I'd written programs using the Win32 API and Symantec 7.5 (back in 1997 when Symantec produced a C++ compiler). I moved to VC++ 6 then 7.1 a few years later. By this time I was using primarily keyboard shortcuts within the IDE to edit code and hardly ever used the mouse unless laying out a GUI. Then in 2003 I decided to install Linux and give it a go. I went for one of the more 'advanced' distro's (Gentoo) and tried various editors (NEdit, Vim, emacs). I was frustrated and liked nothing. So I decided to through myself in the proverbial deep end and started using Vim. I use h,j,k,l to move around and now am fairly proficient with it (e.g. I know 6 or more ways to go into insert mode). I haven't looked back and have not needed to change editors. I guess my point is it was not out of habit that I started using Vim. It was more out of a sense of frustration with the editors on Linux and a desire to punish myself with something difficult so that at the end of the day I might come out stronger.
yes. http://www.yzis.org/
haha the front page advert made the news
How's the lighting meant to work if the extraneous triangles are removed from flat surfaces? You'll end up with shading that isn't very pleasing to look at. You need those extra triangles, even though you can't see them and the surface is relatively flat, if you want the model to look nicely shaded.
They reported this to the Windows developers, who disassembled SimCity, stepped through it in a debugger, found the bug, and added special code that checked if SimCity was running, and if it did, ran the memory allocator in a special mode in which you could still use memory after freeing it.
The Windows team added special case code to run allow SimCity to run! That's an incredible effort.
and have a long attention span for reading slashdot.
'Those who can't do teach :)'.
It's unlikely that there is much communication between the people in systems support who are in charge of implementing the system and academics in the Comp Sci dept. Also the purpose of being an academic is not teaching. Academics don't get raises based on the quality of their teaching. They get promoted based on their research, which basically amounts to having papers published in respectable journals like SIGGRAPH.
I have run spybot - it picked up blazefind - got rid of it but a week later the thing came back. Also I'm pretty sure windows update is broken since it keeps wanting to download and install the same update.
Everytime it boots up it says there's an error on my hardrive and needs to run scandisk. It runs and finds no errors.
A shitty spyware thing called Blazefind has crept onto my machine and everytime it boots up, it switches on the search assistant at the bottom of my taskbar.
It's slow to startup because I use mozilla as my browser/mail client. To be fair though it has run without a problem for about 3 years. The scandisk problem only started recently.
Sounds like you've found the right reason to do a PhD.
The truth about doing a PhD or MSc is that you don't get credit for the code you right. Bad code + good theisis == good mark. Good code + bad thesis == bad mark. Sad but true.
The result of this is that generally people who spend their time doing a PhD and not involving themselves in industrial level code development, i.e. as a part time job or via one of the Open Source projects, won't have any practice reading and chewing through other peoples code. They won't have any experience writing and maintaining a significantly large code base. These are important skills to have for any coding job, and is something that's neglected in academia.
I've also had the misfortune of having to work with some code a PhD guy wrote that was rife with bad variable names, and memory leaks and magic numbers.
I've worked on a 5 year old code base where the I think the highest qualification was an MSc and there weren't any libraries or clear boundaries between the parts of the system.
In my experience, I haven't been able to draw any absolute conclusions about the quality of code that comes from people with or without higher qualifications. I've seen bad work come from people with PhD's, I've seen good work come from people with PhD's and I've seen excellent work come from people with PhD's (for example http://ode.org/, and google)
So in conclusion I propose this loose formula for assessing the quality of a candidate:
Writes good code + minimal qualification == fine
Writes bad code + any qualification == bad
Writes good code + higher level qualification == best
If you value time with family more than a career consider a job as a university lecturer. The pros are: - write code how you want - work on stuff you want to research, not what someone else tells you to do. - more free time, less stress. Cons: - Salary isn't good compared to commerce - Pay rises are dependent on the quality of the papers you publish (unlike the commercial work force academics earn their pay based on academic merit) - You really need a PhD to be considered for a post.
For the GUI I use xrced. When making a GUI it's better to use sizers to layout the GUI and avoid absolute positions. This ensures that the app will look good and widgets won't overlap on any platform. For coding I currently use vim. I've used boa before and found it fine for writing python code. It didn't support sizers at the time though.
Disney can't do superheroes. They do quacking ducks and silly mice and goofy and pluto and all those super friendly type of characters. But superheroes? The type that get pounded through several floors of concrete, and rise up shaking off the dust and mutter stoically 'That hurt a bit'. That's Marvel's job.