OTM. Every company has their own specifics w.r.t. IDEs so it's probably not a good use of your time to worry about the environment outside of what you need to know to get things done.
There's no concrete answer to the get/don't get a C.S. degree question. As you might have guessed already it depends... amount of experience, depth of background, relative visibility, the type of job you're looking for and what industry it's in (something like game development is it's own Universe). I can only offer up anecdotes from my own career - I've had exactly two formal programming classes, but 18 years of job experience from IT garbage collector, to webmaster, device driver wizard, and database king. Like everyone else has been saying, have a broad familiarity with a couple areas of deep knowledge. If I was starting now, I'd make Java one of those deep knowledge areas.
Also, don't underestimate visibility. Write some code, improve on it, and then blog the results. Write comments on someone else's coding blog. I've gotten a couple of contract gig offers just because I posted some sample code to my blog. Go figure.
Lastly, get familiar with database basics. Nothing ridiculous like Oracle but just your basic MySQL/PostGreSQL fundamentals. I didn't set out to be a database guy, but I knew some stuff and now four years later I'm a full-blown DBA and pretty good at it.
― Elvis Telecom, Saturday, 19 December 2009 00:25 (fourteen years ago) link
> I had heard that C++ had lost out a lot to Java
i think this is due to a shift towards webapps (java servlets). i'm a dyed in the wool c programmer now doing java for a living because everything is now sat on a server being served by JBoss.
(never had a lesson in java, hadn't been invented whilst i was in education... lol, z80)
i am aghast at some of the job adverts i see, the list of disparate things they expect you to know. but a lot of this is due to agency idiots. (that said, if i think about all the disparate things i use at work...)
the thing they don't teach you at college but is fundamental when working professionally and/or in groups is version control. get comfortable with cvs or svn or maybe even git. at the very least know what they do.
i'd also recommend having something you can show people, like contributing, or starting, an open source project. or just having some flashy applets somewhere.
this stuff all takes years, 25 years in i'm still picking stuff up.
― koogs, Sunday, 20 December 2009 10:27 (fourteen years ago) link
Hm, I like a syntax-highlighting text editor with parenthesis matching and suchlike, but for the actual business of compiling and running I'm still alt-tabbing to a console window, guess I'd better stop being so afraid of letting the IDE take care of it...
Ha, agency job ads. Seen ads asking for 3 years' experience in technologies which aren't 3 years old.
This is good encouragement to actually listen to the woman who's been trying to get us all to use svn. The only version control I've used was command-line only and didn't do much beyond locking the file and adding a timestamped comment. Seems they're a lot more sophisticated now.
― brett favre vs bernard fevre, fite (a passing spacecadet), Monday, 21 December 2009 16:32 (fourteen years ago) link
file locking is so '90s.
― poster x (ledge), Monday, 21 December 2009 16:37 (fourteen years ago) link
Yeah, I programmed in notepad etc for years, before moving to a proper IDE, mostly because I figured I should learn to program without any tools to help me out. In hindsight that wasn't a particularly good idea, it just made thinks more convoluted and slow. Rewriting code was a major pain etc.Learning an IDE (Eclipse, for instance) is hardly any work at all, since you can start off treating it as little more than a fancified text-editor, and learn the cool tricks as you go along. I mean, hell, I'd used one for over a year before I even heard of "extract method"! Sheesh.
Actually, that reminds me that getting comfortable with Maven or Ant is fairly quickly done, and something well worth doing once you're comfortable with Subversion (SVN) or CVS.Also, testing frameworks. JUnit if you're using Java. It's both quick to learn, and well worth it; just don't let the annoying Test-Driven Design (TDD) fanatics put you off.
― Øystein, Monday, 21 December 2009 18:15 (fourteen years ago) link
there are things netbeans cannot do that easily vim will do in a heartbeat but i can't live without the code completion stuff as i don't really know the libraries (and they change). plus java projects have such a deep directory trees and our stuff is so scattered that you end up spending most of your time in vim typing directory paths to swapping between files (could use ctags i guess)
eclipse i never got to grips with - there's no 'compile' button as it's continually compiling and i like having a compile button.
svn can be used on the command line but we use tortoise.
― koogs, Monday, 21 December 2009 19:11 (fourteen years ago) link
Programmers are the magicians of the modern age
― calstars, Sunday, 8 June 2014 21:36 (nine years ago) link
Not the ones I've known. And I've known more than a few.
― Aimless, Monday, 9 June 2014 04:56 (nine years ago) link
buncha putzes
― j., Monday, 9 June 2014 05:09 (nine years ago) link
Programming is the worst
― Nhex, Monday, 9 June 2014 06:46 (nine years ago) link
DevOps is the worst.
― koogs, Monday, 9 June 2014 10:32 (nine years ago) link
Software Engineer USA™
― ∞, Monday, 9 June 2014 16:04 (nine years ago) link
we like to pretend we're architects and engineers and builders but we're really more like apprentice mechanics or those dudes that assemble pre-made furniture half the time
― a strange man (mh), Monday, 9 June 2014 16:07 (nine years ago) link
programming is great if functions and syntax are well documented. it is the worst thing imaginable otherwise.
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:09 (nine years ago) link
I do enjoy the critical thinking parts of my mind that were unlocked by learning CS theory and programming over a period of time, but it really chafes me to see software developers think that they're able to solve non-software societal problems with that toolkit
― a strange man (mh), Monday, 9 June 2014 16:09 (nine years ago) link
professional googlers
― lag∞n, Monday, 9 June 2014 16:10 (nine years ago) link
Oh, I forgot that one. Software Architect. Classic.
I much rather SysAdmin, coder, developer, webmonkey/webmaster, script kiddie
Mind you, my end goal is probably to be a 'Software Architect', so I should lol carefully
― ∞, Monday, 9 June 2014 16:10 (nine years ago) link
yeah, really smart or tricky code makes you seem like a wizard but what it really makes you is an asshole if it's ever meant to be maintained
pretty sure my coding style has gotten progressively dumber on purpose
― a strange man (mh), Monday, 9 June 2014 16:10 (nine years ago) link
^^ thank you
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:11 (nine years ago) link
I think software/systems architect is a fine title, even if my actual designs-buildings-and-structures friend recoils in disgust. I hate when people introduce themselves as "architects" without the qualifier.
Now, the part of the business where people use "architect" as a verb... not so good.
― a strange man (mh), Monday, 9 June 2014 16:12 (nine years ago) link
I do enjoy the critical thinking parts of my mind that were unlocked by learning CS theory and programming over a period of time, but it really chafes me to see software developers think that they're able to solve non-software societal problems with that toolkit― a strange man (mh), Monday, June 9, 2014 5:09 PM (1 minute ago) Bookmark Flag Post Permalink
― a strange man (mh), Monday, June 9, 2014 5:09 PM (1 minute ago) Bookmark Flag Post Permalink
― ∞, Monday, 9 June 2014 16:12 (nine years ago) link
they probably also think they can throw together that application in a matter of a few days
programmers are horrible estimators
― a strange man (mh), Monday, 9 June 2014 16:13 (nine years ago) link
working with computers makes people feel very powerful because computers are powerful
― lag∞n, Monday, 9 June 2014 16:13 (nine years ago) link
bring back punch cards
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:14 (nine years ago) link
ya, it's just funny because in canada you're not really allowed to use "software engineer", because, well, you're not an engineer. but in the states, it's quite common
― ∞, Monday, 9 June 2014 16:15 (nine years ago) link
I feel like 'engineer' is fair
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:18 (nine years ago) link
you are designing and building something more abstract, but you are still designing and building something
I should be a software architect because I have all the artistic pretensions that building architects have
― a strange man (mh), Monday, 9 June 2014 16:21 (nine years ago) link
interesting how engineer and developer have become prominent as the job has become less about programing
― lag∞n, Monday, 9 June 2014 16:22 (nine years ago) link
you should be an engineering software architect or an architecture software engineer.
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:22 (nine years ago) link
my dad once purchased landscaping software from a barnes & noble. i sometimes think about the people who developed that software.
― sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:24 (nine years ago) link
i dunno, engineering would imply a discipline that's way more predictable than software. there's no ISO manual you can check that tells you the number of tests you need per 1,000 lines of java.
― ugh (lukas), Monday, 9 June 2014 16:25 (nine years ago) link
They might as well claim to be 'magicians of our modern age' and finish the job.
― Aimless, Monday, 9 June 2014 16:25 (nine years ago) link
pretty sure metrics for unit test coverage in large companies are getting there
― a strange man (mh), Monday, 9 June 2014 16:43 (nine years ago) link
Yeah but are they as useful as "minimum cross-section for structs on suspension bridge given expected load" etc etc, I mean physical engineers actually know things
― ugh (lukas), Monday, 9 June 2014 16:48 (nine years ago) link
Programmers - the next job to become demand-weakened by too many people who enjoy it ad thus do it for free
― Brian Eno's Mother (Latham Green), Monday, 9 June 2014 16:57 (nine years ago) link
That will never happen, I don't believe there are enough psychos out there who also love programming that'll fit the demand
― Nhex, Monday, 9 June 2014 17:02 (nine years ago) link
as a cs student, I'm really not feeling the hyperactive "hackathon/build a startup in a day/be the next zuckerberg" horseshit mentality that i fear dominates. I mean, it's obvious that I'm doing this in order to get a job, why do i have to care about forming a startup
― brimstead, Monday, 9 June 2014 20:20 (nine years ago) link
it's difficult, because you do need to keep up on new technologies and development practices, but to do so you end up viewing/reading/attending material that has an overlap with people who are WE ALL MUST MAKE NEW BUSINESSES and it's irritating
I guess the larger tech-oriented gatherings don't have that problem, but then you're at Microsoft's Build conference or JavaOne or whatever the fuck people go to these days
― a strange man (mh), Monday, 9 June 2014 20:52 (nine years ago) link
Every year my dad never fails to ask me to go to this one Oracle conference with him
― ∞, Monday, 9 June 2014 21:20 (nine years ago) link
on the bright side, the huge corporate ones usually have really cheesy entertainment
I think I went to one yeeeears ago with Mini Kiss, Battlebots, and a Rolling Stones cover band.
― a strange man (mh), Monday, 9 June 2014 21:21 (nine years ago) link
Silicon Valley Techno-Utopianism
― ₴HABΔZZ ¶IZZΔ (Hurting 2), Monday, 9 June 2014 22:19 (nine years ago) link
Guilty as charged.
― Chewshabadoo, Monday, 9 June 2014 22:42 (nine years ago) link
Can I still charge by the hour though?
^Just call yourself a consultant instead of a freelancer and you should be good
― ∞, Monday, 9 June 2014 22:53 (nine years ago) link
programming as a carer
― dn/ac (darraghmac), Monday, 9 June 2014 22:54 (nine years ago) link
Being a programmer means being the smartest guy in the room while taking requirements from the dumbest guy in the room.
― calstars, Tuesday, 30 September 2014 19:52 (nine years ago) link
If I had to do it all again...I wouldn't.
― calstars, Tuesday, 30 September 2014 19:53 (nine years ago) link
Can we swap careers? Because I can tell you that doing IT support for 15 years has sucked way more than I imagine being a programmer would have.
― wackness unlimited (snoball), Tuesday, 30 September 2014 19:56 (nine years ago) link
xp the zuck is definitely portrayed as an asshole in The Social Network, but his attitude toward those twins was basically otm and well aligned with your feelings I am guessing.
― GhostTunes on my Pono (Sufjan Grafton), Tuesday, 30 September 2014 19:57 (nine years ago) link
i'm glad he likes nick bostrom because it means i don't need to take him 100% seriously.
― formerly abanana (dat), Monday, 30 October 2023 12:57 (four months ago) link
I think he's clearly right about the general trend and mostly right about the speed at which programming norms will change to have AI do the heavy lifting. The offsetting trend will be how many more lines of code will be incorporated into every day real world processes.
― more difficult than I look (Aimless), Monday, 30 October 2023 17:18 (four months ago) link
I thought it nice of him to start (with uncommented code samples) by making sure that we know he's a bad programmer - the "the tests are easier to write than the programs" is a similarly brave declaration that he should be let nowhere near CS students.
― Andrew Farrell, Sunday, 5 November 2023 01:01 (four months ago) link
It sounds like his vision is that software development will go through the following phases:
1) AI writes the code, humans still read it
2) AI writes the code, humans can no longer understand it
3) There is no more coding as such. The AI is the only program you need. It does it all.
― o. nate, Monday, 6 November 2023 15:55 (four months ago) link
who codes the coder?
― koogs, Monday, 6 November 2023 16:43 (four months ago) link
Yes, that's a simplification. There will still be people coding the AI. But will be a tiny, very specialized workforce. Much smaller than the current legions of software developers. Roughly the size of the workforce that designs CPUs nowadays.
― o. nate, Monday, 6 November 2023 16:47 (four months ago) link
In line with that, a lot of this handwringing and prognostication over AI seems to be an inversion of the enthusiasm people had for increasingly higher-level languages allowing civilians to not deal with lower-level code but... C and assembler are still being taught decades later--we still use Fortran!
― Philip Nunez, Monday, 6 November 2023 17:59 (four months ago) link
but that'll free us to use our time for art etc.
https://www.bbc.co.uk/news/uk-67302048
"Elon Musk tells Rishi Sunak AI will put an end to work"
future be like the Federation in Star Trek
― koogs, Monday, 6 November 2023 18:05 (four months ago) link
yeah, I tend to think of this as just another iteration of making an even higher-level language, albeit this one is probably going to end up being a higher step than in previous instances. I think there will continue to be cases where a very specific and detailed logic will be required and this will still have to be written in detail one way or another by a human, even if it's just very specific English language sentences, but that's still programming.
xp
― silverfish, Monday, 6 November 2023 18:23 (four months ago) link
Are C and Assembler still being taught, or is it just that there's still jobs in those skills because of legacy codebases? I mean, you can still learn C on Pluralsight, I suppose...
― Andrew Farrell, Monday, 6 November 2023 18:47 (four months ago) link
I spoke with someone who graduated university a couple years ago and they did an assembly class, but it was more to learn how the processing works at the most basic level rather than anything intended for some kind of practical application (which was already the case 20+ years ago when I was in school).
I don't know if C is still taught by itself, but C++ is still taught and you kind of get the basics of C with it.
― silverfish, Monday, 6 November 2023 18:59 (four months ago) link
I assume that you'd need C if you wanted to get into OS/Unix stuff? I also heard that NASA uses C? And lots of embedded devices?
As for assembly, doesn't that get used in heavy duty graphics programming (i.e. video games)?
― Kira Nerys Witherspoon (Leee), Monday, 6 November 2023 19:01 (four months ago) link
Not as much anymore. It's all fairly abstracted down to frameworks and licensed engines. And a lot of the GPU stuff is via both frameworks and drivers.
― ɥɯ ︵ (°□°) (mh), Monday, 6 November 2023 19:03 (four months ago) link
So there's some low-level programming being done but it's being broadly reused because very few studios will build their own engine from scratch rather than licensing Unreal or Unity.
― ɥɯ ︵ (°□°) (mh), Monday, 6 November 2023 19:04 (four months ago) link
i don't think many large engineering orgs are writing new userland code in C proper.
os/device level is another matter.
but C++ will never die, partly through legacy systems, but partly because it's what e.g. pytorch and tensorflow are implemented in. and C is a prereq for most C++ dev work.
― 𝔠𝔞𝔢𝔨 (caek), Monday, 6 November 2023 19:11 (four months ago) link
the closer i've got to ml platform and infra, the more jobs i see that i can't apply to because i don't know c++
modern c++ is actually pretty decent. i picked it up on the side over the past year or so since qt in c++ is the only option for desktop linux applications (lol) that doesn't make me want to walk off a cliff.
i think everyone should give it another look, esp if it's preventing you from applying for cool shit
― butch wig (diamonddave85), Monday, 6 November 2023 21:57 (four months ago) link
I've got back into c++ recently, and loving it. sadly not for any career aspect, i don't think I could handle the pressure of applying it to in a job.
― Ste, Tuesday, 7 November 2023 13:32 (four months ago) link
So, uh, do I need to start thinking about a third career?
― The SoyBoy West Coast (Whiney G. Weingarten), Wednesday, 8 November 2023 01:47 (four months ago) link
I've been thinking the same lately, or maybe going back to my second career. My job search is lasting much longer than I hoped
But at least I got a story from it. I recently applied for a position where they had me take this homegrown multiple-choice online assessment which was straight up hilarious - couple questions flat out had no correct answer, couple more ambiguous, and several arcane code questions where they ask what the output would be but you can just execute the code in a browser and see the correct response. They scheduled me for an interview and then I saw they have literally the lowest rating on Glassdoor I've seen: 1.6 out of 5. Thought about cancelling but deciding to just do it for the practice. Place looked awful and all work is onsite. Company owner asked me a few things illegal to ask during an interview. Backend is a software I've never heard of that was apparently discontinued in 2007. They were even hesitant to tell me the benefits when I asked - turns out they have no PTO or sick days for one year, no insurance for three months! They did send me an offer that's at the very bottom of the range I was asking but I decided not to bother going further, I feel like there's no guarantee they'd even pay me
― Vinnie, Thursday, 9 November 2023 16:58 (four months ago) link
smdh JS:
-1 % -1-0
― Selune Gomez (Leee), Tuesday, 13 February 2024 20:47 (one month ago) link
Fortunately -0 === 0 but still: lol
― the new drip king (DJP), Tuesday, 13 February 2024 20:53 (one month ago) link
unary+ converts an array or boolean to a numberdouble negation converts an array to a boolean
+[] == 0+!![] == 1
― formerly abanana (dat), Tuesday, 13 February 2024 21:06 (one month ago) link
the video silby linked eons ago that's mostly about javascript still pops into my headhttps://www.destroyallsoftware.com/talks/wat
― ɥɯ ︵ (°□°) (mh), Tuesday, 13 February 2024 21:28 (one month ago) link
saw somebody yesterday claiming
"2" + "2" - "2" = 20
which i guess works if + on strings is append but - is subtract
― koogs, Tuesday, 13 February 2024 22:00 (one month ago) link