KDE Releases KDevelop 4.6 93
New submitter KDE Community writes that the KDE project has released KDevelop 4.6.0 as the latest version of the free and open source integrated development environment.
"KDevelop 4.6.0 improves debugging support with GDB. The GDB integration improvements include some operations now going into effect immediately rather than needing to re-run the program, improved debugging from external terminals, and a CPU registers toolview. KDevelopers' CPU registers toolview also allows for showing and editing all user-mode registers and general purpose flags for x86/x86_64/ARMv7 platforms. Other KDevelop 4.6.0 changes include greater language support within the PHP plug-in, Python language support improvements, more C++11 language support, improved project management, and a clean-up to the IDE's user-interface."
Re: (Score:3)
Obviously, these KDE people want to blow stuff up.
Re:IDEs... (Score:4, Funny)
Good call. Maybe the NSA should infiltrate open source projects and make sure there aren't any terrorists. They'll need to gain trust by spending a few years fixing bugs and adding new features.
Also, even though the NSA is watching my online activity and phone calls/location, they can't always tell what I'm doing offline. I suggest they assign two or three girlfriends to monitor me. I like nerdy mathematical types so I'm sure they can find someone. I'm usually more talkative after mind-blowing sex, so it will work out good for both of us.
Re: (Score:1)
Ever heard of keyboard shortcuts? Yeah, IDEs have these, too.
Re: (Score:3)
For instance, what shortcut would you use for even something utterly trivial as 'delete N lines downwards'? Whatever shortcut that might be, you'd very likely end up hitting the same key combo N times.
Re:IDEs... (Score:4, Informative)
KDevelop uses Kate as its editing component, which has a Vim [kate-editor.org] emulation mode. Using this Vim mode, you would just do
(N-1)j
e.g.
4j
to delete 5 lines downwards. Additionally, KDevelop has probably the best C++ navigation/ code completion I've ever seen in an open-source IDE - it's a huge productivity booster for me.
Re: (Score:2)
Because that's a common use case. OK, me editing your code it probably is.
Made me laugh, thanks.
[...] when it comes to parsing, even to related plugins, editors suck big time.
When it comes to audio playback, audio encoders suck big time. See the analogy?
@Parent's siblings: You're proving my point by pointing out how you can get kinda-sorta-vi-ish-emulation into your fancy IDEs. (I've seen a bunch of those tools and they all suck big time)
Re: (Score:4, Interesting)
What makes you think text editors with a GUI are not keyboard usable? Get out of your cave! You might be surprised, but people working on an IDE are programmers... they do like the keyboard, too.
KDevelop even has vim-compatibility via its kate texteditor component. Eclipse has vim plugin, as does Qt Creator, which even ships with a "fakevim" plugin installed and enabled by default.
Qt Creator's main navigation method, the locator which will take you to any symbol/class/file/line/web page/...) is entirely keyboard based (trigger it with Ctrl-K, not the mouse though, that would kind of spoil the effect).
I use my IDE of choice almost completely without the mouse: The only time I grab the mouse is when browsing the help (that feels too much like browsing the web to avoid the mouse;-).
Re:IDEs... (Score:4, Insightful)
Can't really think of a time where I had to "delete the next N lines" - but "expanding selection to next enclosing scope" or "word boundary", and either deleting or copying or cutting that? Or moving the current line, or currently selected lines up and down? That happens a lot... and my IDEs have shortcuts for that.
And then there's the neat stuff that's hard to do in a non-IDE, like efficient navigation (including jumping to one of multiple possible concrete implementations of an interface).
Sure, vim is neat for editing dumb config files over a SSH connection, but I don't get why people don't want to use the best tools for the job when it comes to programming... simple manipulation of text is probably what I spend the least amount of time on while doing development stuff.
Re: (Score:1)
I agree, I've been a Windows c# programmer for 10 years and never had a single use for Visual Studio. All I do is edit code, compile and run, no joke.
IDEs... (Score:5, Interesting)
... because a *good* IDE can make you so much more productive. Yes, vim is great, yes, it can do a lot, but it still does not know what you are writing there.
My IDE does and thanks to that I can refactor stuff in seconds that took minutes earlier (or maybe even hours) and I make less mistakes doing so. Having to spend less time on boring tasks makes the whole job of programming something so much more enjoyable!
You need a good IDE though with a good code model, so that it actually understands the code you are writing. Many of the free IDEs do not have that, so those are a total waste of time. KDevelop, Eclipse and Qt Creator all have a code model though and do support you with quite a few refactoring operations (like move code around, rename variables and classes, etc.).
Re: (Score:1)
... because a *good* IDE can make you so much more productive.
I found that a good editor made me much more productive.
Yes, vim is great, yes, it can do a lot, but it still does not know what you are writing there.
I'd argue that it's not the job of my tools to understand my code for me. The coder is the guy to have to understand the code. /want/ to have my text editor understand my code for me, because it's a text editor.
That being said, I wouldn't even
My IDE does and thanks to that I can refactor stuff in seconds that took minutes earlier (or maybe even hours) and I make less mistakes doing so. Having to spend less time on boring tasks makes the whole job of programming something so much more enjoyable!
Oh wow. Yeah, what's having to use a notepad-style integrated text editor when you can /refactor/ your code with just one click! Convinced me, will purchase.
You need a good IDE though with a good code model, so that it actually understands the code you are writing.
Redundant much?
Many of the free IDEs do not have that, so those are a total waste of time.
As is any other IDE
KDevelop, Eclipse and Qt Creator all have a code model though and do support you with quite a few refactoring operations (like move code around, rename variables and classes, etc.).
Refactoring, again.
Re: (Score:1)
Re: (Score:2)
I'm surprised by your weird reaction -- oh wait, you're using some vi-emulation. Yeah, those kind of make me angry too, for all the features they lack.
Re: (Score:2)
IDEs do a lot to make creating software more efficient. Mere typing is trivial, and doesn't generally take the majority of the time. If you can't learn an IDE well enough to appreciate it, you are either a complete idiot or you are writing such trivial software that no one cares about it. Or, possibly, you are using a language for which no (good) IDE exists, but you didn't try that argument, so I'm guessing A or B.
Re: (Score:3)
Re: (Score:3)
That's not a sufficient condition. Your code has to be 100% correct and your design has to be 100% correct and your requirements can't ever change and your (target and development) environment can't ever change.
Re: (Score:2)
On a broken codebase, which has lot of cross-module dependencies, global variables all over the place, shadowed by local variables here and there -- yeah, your full-parse fancy refactor thingy might get it faster. OTOH, that's not code I'd want to work with, and/or be proud of.
Any code written with a minimal reasonable amount of common sense and sanity,
Re: (Score:2)
My point about correctness was more along the lines of being writing code that didn't ever need to be changed after it was first written.
As for refactoring, try using just those tools to rename an identifier that is not, by itself, globally unique, but could nonetheless be uniquely identified by software that can understand the syntax of the language, and can realize the context of every single statement and identifier automatically.
Sure, you *CAN* do this by hand... but using a tool to accomplish it o
Re: (Score:2)
This sort of stuff has been rare for me. Planning head helps a lot. Programmers survived for decades without these tools just fine, we sent people to the moon without Eclipse or Visual Studio. Ie, try to never have global variables, prefer variables that are scoped to the current file or function only, prefer class variables, etc.
For me the bigger refactoring issues are not about renaming but about redesigning an API; adding new parameters for example. Even then the cause for this is most often because
Re: (Score:2)
Yes, programmers survived for decades without these tools,but back in those days, software wasn't anywhere nearly as big, and real-world expectations on software were not as high (mostly because most of the real world didn't even know what computers could do yet).
As you say, the cause for such changes is usually the result of a lack of planning. But in my experience, the real world rarely has a clear picture of what they actually want when a project starts... and if we all just waited until we had a gu
Re: (Score:2)
Hmm, I wonder where this value is being used... No no, not this variable in particular, but he value it contains, also, where it comes from. a few dozen million lines of code, the value crossing module boundaries, being passed around from object to object, injected, going through constructors and public properties...
Oh that's going to be fun with grep/find/sed.
Writing code is the most trivial part of software development. Reading/Maintaining it, no matter how awesome the people who initially wrote it are, i
Re: (Score:2)
And the IDEs that do what you describe are very rare, or only work for a particular language. Ie, Eclipse is great for Java, sucky for C.
Re: (Score:2)
Eclipse is terrible, TERRIBLE for java (IntelliJ ftw). I'd be working in VIM too if I had to deal with Eclipse, fortunately I don't.
Yes, if I was working in C++ I'd be using a text editor, as a lot of the tools are unable to follow what complex templates do and whatsnot, but aside for that, most mainstream languages, from C# to Java, going by Python and Ruby, all have IDEs with these functionalities.
I don't care if they're rare, I only need one.
Re: (Score:2)
Yes, but what's the percentage of time. If an IDE slows you down to 20% of your normal speed but refactoring is now 500% faster, is it an overall win?
The refactoring won't even work until you first do the prerequisites: getting all your files into the project, setting up a build system with the IDE so that it knows which parts of the files are actually included, and so forth. Only then can you click the magic button and have things work. That's a non starter if you already have an existing project and bu
Re: (Score:2)
Re: (Score:2)
Because of decades of muscle memory in one editor, and most of the IDE editors I've used in the past were just awful, and because you're stuck in a lousy MDI interface
Re: (Score:1)
> I found that a good editor made me much more productive.
A good text editor certainly helps, but a good IDE helps a lot more. After all it is basically a *intelligent* text editor plus some extra tools in one consistent package.
> I'd argue that it's not the job of my tools to understand my code for me. The coder is the guy to have to understand the code.
Nope, the co-worker of the coder has to understand the code.
And the compiler has to understand your code, too. And other specialized tools like bison
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
The problem is that most IDEs have a limited view of the code, as in smaller editing windows. This is because they have all the tool bars, class views, variable views, and so forth visible. They never reduce to just a few large editing windows. With Emacs I can have 3 very large windows filling up the space on a wide screen monitor and this is very productive. I see people with vi or other straight-up code editors with lots of open windows at a time.
Technically an IDE _could_ do the same thing, but they
Re: (Score:2)
Re: (Score:2)
Then there's the One-Tool-For-One-Job approach, which focusses on flexibility - we know this from the unix world.
It isn't a ``heinous sin'' to think you're vastly more productive with an IDE (although most people making that claim simply do not know their unix toolbox). If you like the monolithic approach, fine.
Contrary, it's not a si
Re:IDEs... (Score:4, Insightful)
No... it's not.... but I really get tired of seeing people here suggest that programmers who might actually require an IDE to get their jobs done in a timely fashion are somehow less competent as programmers than people who've probably never had to work on large scale projects with schedules that aren't humanly possible to achieve if you were to just use manual tools and a plain text editor.
Whether this is not the programmer's fault is irrelevant... this is how the real world of software development actually is... and a programmer who doesn't get the job done in the time that he's expected to do so is soon going to find himself unemployed. Call me picky... but I would rather be able to afford to keep a roof over my head and eat than brag about being such an awesome programmer that I don't need modern software development environments like an IDE to get a job done.
Re: (Score:2)
No... it's not.... but I really get tired of seeing people here suggest that programmers who might actually require an IDE to get their jobs done in a timely fashion are somehow less competent as programmers than
Ah, here it goes again:
people who've probably never had to work on large scale projects with schedules that aren't humanly possible to achieve if you were to just use manual tools and a plain text editor.
...did you by any chance not read the post you're replying to? Stop pretending like IDEs would naturally boost productivity, when you simply don't know both sides of the issue. I'd actually be slower using an IDE. And in no fucking way would one /ever/ need to have a grasp of the entire code base in order to work on something. When i work on a project, i work on a specific subsystem of said project. If that subsystem still consists of over 9000 lines of code, i /again/ can usually na
Re: (Score:2)
manual tools and a plain text editor.
Said 'manual tools' are typically non-interactive and hence very automatic, especially in pipelined combination.
The text editor is hardly 'plain', it's highly functional.
You seem to know your stuff very well.
Re: (Score:2)
You said it yourself... "in messed up cases that might be true".
A great deal of the world of software development is made up messed up cases, incomplete and constantly changing functional requirement specifications, and just trying to freaking get the job done before your employer decides to replace you with somebody else who might even be less competent than you, but will tow the company line and work for less money than you will. In my experience, the real world demands results that are not humanly ac
Re: (Score:2)
Programmers that need an IDE are crappy programmers by definition.
If you can't manually refactor, debug, compile and build your code, you don't know what you are doing and should probably stop.
That said, an IDE can be a help in some cases and using one doesn't automatically make you a crappy programmer.
It's the programmers that can't do anything without an IDE that are suspect.
Re: (Score:3)
Re: (Score:2)
That whooshing sound is you missing the point.
Are you saying you can't quickly do anything if there isn't one giant button for you to push?
Re: (Score:2)
Re: (Score:2)
You are obviously in a conversation that is over your head.
I guess you fall into the has to use IDE's category and are offended that you don't care enough to learn your profession.
Re: (Score:2)
Re: (Score:2)
Also, if the best you can do is insult somebody who doesn't happen to share your values about what the best tools are to use instead of actually specifically addressing the issue being discus
Re: (Score:2)
Nice non-sequiter.
The quality of a programmer is measured by many factors, knowing the system he is working on means he knows the build system well.
Re: (Score:2)
The GP to which you replied is a near-sighted bigot. If he lived in the South, he'd be prime KKK material. For all I know, he's a(n honorary) member in actuality.
Anyone who thinks a few keystrokes is less efficient than piecing together a Unix pipeline that will totally mess up your code is a complete idiot and really isn't worth a second thought.
Re: (Score:2)
The sin is to accuse other programmers who do not use your tools of being inferior to you.
Parent gets it! Mod up! (Score:2)
"Related Links" (Score:2, Funny)
810Electric Cars: Drivers Love 'Em, So Why Are Sales Still Low?
783Texas Drivers Stopped At Roadblock, Asked For Saliva, Blood
722Google: Our Robot Cars Are Better Drivers Than You
666Atlanta Man Shatters Coast-to-Coast Driving Record, Averaging 98MPH
I....guess i see.
Templates (Score:2)
Re: (Score:2)
I just assumed that anyone writing Java code would use Eclipse as their first choice. (But I'm not an expert Java coder.) Is there some reason to want to use KDevelop rather than Eclipse when coding Java?
Re: (Score:1)
Since it sounds like you already wrote some... you could always... you know... submit them to the developers to be included in future releases?
Re: (Score:2)
That's the biggest failings of IDEs I think. They tend to want one IDE per language type; sometimes one IDE per language/OS pair as well as not all of them are portable.
Re: (Score:2)
I used to love ActiveState Komodo IDE for PHP, back in version 6. They did some redesign for V7+ that just killed performance, though. 'What does performance have to do with IDEs', one may ask. Massive input lag, and the like. It's that bad.
Sad, too. It was great.
LLVM/Clang support (Score:2)
Re: (Score:2)
And yet another failing of IDEs, they tie themselves too tightly to the external tools that developers need. A good tool should be flexible and conform to the developer instead of assuming the developer will conform to the tool.