Programming Languages
-
I hear lot of discussions now where a developer is expected to know both .Net and Java. Does is really make sense (or a difference for that matter)?
Mobile Apps - Sound Meter | Color Analyzer | SMBC | Football Doodles
Both are just tools of the trade. Does it make a difference if you use a left-handed screwdriver instead of a right-handed one? Arguing over tools is akin to angels on a pin, good way to waste time but ultimately unproductive. If you know how to use programming tools you can work with just about anything, and if you don't know...well, there's always cowboy coding for some tiny startup that doesn't care what it turns out as long as there's an IPO in there somewhere.
-
Not a clue what you are talking about.
Mobile Apps - Sound Meter | Color Analyzer | SMBC | Football Doodles
Jon Skeet is the author of the book "C# in Depth" and the leading answerer of C# questions on Stackoverflow.com. For his day job, he works for Google, writing in Java.
Truth, James
-
The question really isn't "Why should someone know both?", but "Does is make sense for one company to need both skills in one person?"
Truth, James
-
Not bragging, but one does tend to accumulate a volume of languages over the decades. I'm not entirely certain, but the count was somewhere in the vicinity of 1217, counting all variants and experimental versions. I still have some of the reference manuals from my first projects -- pre-internet. When I started in the industry, one was required to only know six languages (Basic, COBOL, Fortran, RPG, Assembler and ALGOL/Pascal). All the rest are derivatives of at least one of those six. If you don't believe me, please explain why a large number of language reference manuals contain a syntactic reference section written in Backus-Naur (ALGOL) form.
The difficult may take time, the impossible a little longer.
Member 10707677 wrote:
1217
Wow! Just Wow! Maybe you should put out all your experiences in a series of articles / tips. Will be really helpful for all the youngsters (and oldsters) out here.
-
Experience != Skill Knowing the foundations of OOP, SQL and some FP I can pretty much write any (major) language with relative ease. Add to that knowledge of basic structures such as arrays, lists, hashtables, graphs, etc. and some knowledge of common algorithms and you're pretty good to go. Get familiar with some desktop and some web development too. Took me about five years. I'm not saying I know everything (no one ever will) or that I'm some superstar programmer, but I'm sure as hell better than a lot of 10+ years experience seniors I've met (when it comes to programming anyway) :)
Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
Sander Rossel wrote:
five years
:thumbsup: Some of us, like me, who have no basic degree in CS, need more time than that. (My basic degree is in Mech Engg). To give a concrete example, at the beginning of my software career, I did not know how a file was stored in the machine; let alone the difference between 'ascii files' and 'binary files'. Any the worst horror was - my first project was to implement JPEG image compression. Everything was new - image file formats, DCT, Huffman coding, pointers and Visual Studio 1.5 :-) A CS guy would have known most of these by his basic education. Was a real real struggle. And the 'Google' those days were Altavista/Lycos; and the Internet was quite small. Why I had to join such a job is another question :-) for which the short answer is that my family circumstances did not allow me to go out of Bangalore, and this was the most attractive ($$) job available.
-
I hear lot of discussions now where a developer is expected to know both .Net and Java. Does is really make sense (or a difference for that matter)?
Mobile Apps - Sound Meter | Color Analyzer | SMBC | Football Doodles
It makes sense to know everything. Your ability as a programmer will be directly proportional to the number of languages you know (and also will be directly proportional to the number of things you know overall). Think about it this way: if you want to be able to write programs to do anything at all, you have to know everything. That should be the nirvana you struggle towards. There is no such thing as an unimportant or superfluous piece of knowledge: the universe is what it is because of all of it, at exactly equal levels of importance.
-
I do fine knowing none of them (actually I "know" C#, the little I needed to port an old VS6 Add-In to VS2008 and a little of C++/CLI, the minimum to create a DLL accessible both from VB6 and from .NET), it really depends on the field you work into. If you work on microcontrollers or have a strong integration with hardware you wouldn't probably need them except on occasional basis.
Geek code v 3.12 { GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- r++>+++ y+++* Weapons extension: ma- k++ F+2 X } If you think 'goto' is evil, try writing an Assembly program without JMP. -- TNCaver
Yep, I've been an embedded programmer for decades (just love the nitty gritty low level stuff) and pretty much all I need to know is C and some C++. I used Java once for a tester years ago just to see what it was about (no unsigned numbers???). And I recently did another tester but in VB.NET. I'd have used C# but my boss only knows VB and he wants to be able to mess with the code (he's a hardware engineer).
-
Sander Rossel wrote:
five years
:thumbsup: Some of us, like me, who have no basic degree in CS, need more time than that. (My basic degree is in Mech Engg). To give a concrete example, at the beginning of my software career, I did not know how a file was stored in the machine; let alone the difference between 'ascii files' and 'binary files'. Any the worst horror was - my first project was to implement JPEG image compression. Everything was new - image file formats, DCT, Huffman coding, pointers and Visual Studio 1.5 :-) A CS guy would have known most of these by his basic education. Was a real real struggle. And the 'Google' those days were Altavista/Lycos; and the Internet was quite small. Why I had to join such a job is another question :-) for which the short answer is that my family circumstances did not allow me to go out of Bangalore, and this was the most attractive ($$) job available.
Avijnata wrote:
Some of us, like me, who have no basic degree in CS, need more time than that. (My basic degree is in Mech Engg).
My basic degree is art, culture and media! :laugh: My bachelor degree is Common Art and Cultural Sciences and my masters degree is Media and Journalism. I only started a part time IT study at the Open University three years ago. Still haven't finished my 'first year', it's not going very fast... Doing a lot of hobbying and writing did me lots of good though :)
Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
-
Avijnata wrote:
Some of us, like me, who have no basic degree in CS, need more time than that. (My basic degree is in Mech Engg).
My basic degree is art, culture and media! :laugh: My bachelor degree is Common Art and Cultural Sciences and my masters degree is Media and Journalism. I only started a part time IT study at the Open University three years ago. Still haven't finished my 'first year', it's not going very fast... Doing a lot of hobbying and writing did me lots of good though :)
Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
:thumbsup: Genius! Also, shows your passion towards CS topics!
-
Jon Skeet is the author of the book "C# in Depth" and the leading answerer of C# questions on Stackoverflow.com. For his day job, he works for Google, writing in Java.
Truth, James
Ok cool. Thanks for the answer.
Mobile Apps - Sound Meter | Color Analyzer | SMBC | Football Doodles
-
Jon Skeet is the author of the book "C# in Depth" and the leading answerer of C# questions on Stackoverflow.com. For his day job, he works for Google, writing in Java.
Truth, James
Didn't knew Jon Skeet works on Java too. Personally, I do know both .Net & Java and I liked Java too much in my college days :)
-
Not bragging, but one does tend to accumulate a volume of languages over the decades. I'm not entirely certain, but the count was somewhere in the vicinity of 1217, counting all variants and experimental versions. I still have some of the reference manuals from my first projects -- pre-internet. When I started in the industry, one was required to only know six languages (Basic, COBOL, Fortran, RPG, Assembler and ALGOL/Pascal). All the rest are derivatives of at least one of those six. If you don't believe me, please explain why a large number of language reference manuals contain a syntactic reference section written in Backus-Naur (ALGOL) form.
The difficult may take time, the impossible a little longer.
Same here--learned dozens of languages over the years, including some arcane languages such as REPO and EDL. Found that a language is just a language, i.e., a method for taking some Input, doing some Processing to produce some Output. After a while, the language becomes immaterial. One language might be better suited to accomplish a task than another language, but, with few exceptions, the task can usually be completed in any language. The harder part is getting a clear definition of the task to be completed, i.e., Input-->Processing-->Output. (Remember HIPO?)
-
Not a clue what you are talking about.
Mobile Apps - Sound Meter | Color Analyzer | SMBC | Football Doodles