Programming as a career

Message Bookmarked
Bookmark Removed

I've been doing some programming at work, but because it's a hardware place, the bar is set pretty low in terms of languages. I've floated my resume out there a couple times, but aside from a couple nibbles, nothing, so I've realized that I don't have enough CS knowledge: a decent amount of perl, less decent PHP, some Mysql, some Javascript, and a couple of C classes that I've taken a couple years ago that have fallen into disuse. What, then, should I improve on? Should I take some Java classes? I figure that I'll have to take a data structure class sooner or later; should I aim for a certificate or even a degree?

Leee, Friday, 21 August 2009 03:28 (fifteen years ago) link

Java and C# are very high in demand. And definitely get a Bachelor's degree in CS if you can. Tons of places won't even give you the time of day if you don't have one.

Mr. Snrub, Friday, 21 August 2009 03:36 (fifteen years ago) link

Bump. Anyone else, or did Mr. Burns give the long and short of it?

Leee, Friday, 21 August 2009 21:00 (fifteen years ago) link

I've been in this career so long I'm obsolete, so my best advice is look at the want ads for programmers and see what's needed most. And I hope a BS in CS still means you know C inside and out.

nickn, Friday, 21 August 2009 21:27 (fifteen years ago) link

Oh, and get the A+ certification. No, it's not very programming-related, but it shows that you know rudimentary knowledge of PC repair, it's a super easy exam, and it's on your resume forever.

Don't bother with most other certifications, though. They're an absolute nightmare to study for and they become obsolete too fast. Instead, I'd start contributing to some free open source project on sourceforge or google code or something, and then bring that code with you to all your interviews. It gives you a good answer to the "yes, but what have you done lately?" question, and voluntarily contributing for a free project makes you look good.

Mr. Snrub, Sunday, 23 August 2009 04:02 (fifteen years ago) link

three months pass...

Asking coworkers and family, and two things I often hear:

1. Get at least a bachelor's in comp sci/software engineering (I have an ever-useful English degree already) because in terms of career growth, you won't get priority unless you have that degree. This is important to me, given that I'm currently at a position where I have almost no room for growth.
2. Don't get a bachelor's, because everything's getting outsourced in software engineering anyway.

I'm reluctant to give up before I've even gotten started on programming, since I took forever to find a job, first of all, and one that I actually enjoy.

Leee, Friday, 18 December 2009 05:40 (fourteen years ago) link

People who say #2 don't know what they're talking about.

Just make sure you either specialize or diversify your skills (whichever suits your persona, there are pros and cons to either) so you're not a one trick programmer, and you'll be fine. In this late 2009 economapolypse, I'd go with the diversify-yourself-and-learn-a-whole-bunch-of-shit-for-fun angle. Companies will give preference to people who geek out on programming in their spare time, or *ahem* at least can pretend very well that they do.

Sock Puppet Pizza Delivers To The Forest (Sock Puppet Queso Con Concentrate), Friday, 18 December 2009 06:35 (fourteen years ago) link

Yeah, learn a bunch of shit, more the better.

kingfish, Friday, 18 December 2009 06:40 (fourteen years ago) link

3. Make up for lack of degree w/ experience (fuck going back 2 school)

shartin jort (am0n), Friday, 18 December 2009 06:44 (fourteen years ago) link

Other recent observations: open source environment jobs have blossomed.. Microsoft technology jobs have softened (for pretty obvious budget reasons.) It's awesome to know both, but if you had to choose one, choose the former -- since it's free, and if you can prove that you wrestled with bugs in some open source package, and overcame them, that's something you can put on a CV.

(The really stupid thing about tech companies: no one will hire a seasoned C# programmer for a mid-level Java position, or vice versa -- even though the two language skills are highly transferable. This is digressing into rant territory, so I'll stop.)

Sock Puppet Pizza Delivers To The Forest (Sock Puppet Queso Con Concentrate), Friday, 18 December 2009 06:51 (fourteen years ago) link

3b. Or at least spend a number of days going through wiki pages on algorithms involving binary search trees, sort algorithms, and abstract data types like stacks, queues, linked-lists, etc. A BS in CS will teach you that and a lot more, but in practice, it's the former stuff that companies really care about. You do need some math skillz to understand the former. learning O-notation is a bonus.

Then again, some companies just want to hire people who like picking things up quickly.

Sock Puppet Pizza Delivers To The Forest (Sock Puppet Queso Con Concentrate), Friday, 18 December 2009 06:55 (fourteen years ago) link

Yeah, learn a bunch of shit, more the better.

ehh, having a multidisciplinary cv can be a pain, recruiters don't know what to do with you.

poster x (ledge), Friday, 18 December 2009 10:58 (fourteen years ago) link

I'll back the assertion that it is possible to be a coder without a degree (my ex is an example - heck he didnt even finish high school) but if you go down that path you gotta know C++, C#, assembly, perl, etc relevant to field language. You have to live and breathe code and *enjoy* doing it. I see people who code like other people play and write songs on guitars. Theyre the ones who do well.

millivanillimillenary (Trayce), Friday, 18 December 2009 11:12 (fourteen years ago) link

i would think with that trayce you kinda have to get a bit lucky, and find a company that's a bit more relaxed in their recruitment drive.

i recently applied for a java role, having a rather great bouncy interview and selling my enthusiasm for coding etc. They seemed impressed and I thought i'd done well but the other guy won the job basically because he knew more about 'business' terms.

all companies are different, worth researching them individually for your applications.

bracken free ditch (Ste), Friday, 18 December 2009 11:21 (fourteen years ago) link

Games industry is perhaps a unique beast compared to coding in all other fields, as it is a lot more of a "prove yer shit" industry.

millivanillimillenary (Trayce), Friday, 18 December 2009 11:57 (fourteen years ago) link

Know this really well.

Then this.

And then this.

Now you're pretty much all set.

Mr. Snrub, Friday, 18 December 2009 12:01 (fourteen years ago) link

xp Trayce, yeah agree with that

bracken free ditch (Ste), Friday, 18 December 2009 12:14 (fourteen years ago) link

Is learning C++ a particularly good idea these days? There's got to be a lot more jobs in Java and PHP, at least. Hell, probably even in Ruby and Python. People do argue that you learn so much from programming C++ that it makes other languages much easier to pick up etc, but that doesn't seem to me like a good enough reason to start there.

Guess it depends on the job you want -- I imagine the places where they use C and C++ now are ones where you're most likely to actually need a CS degree.

What do I know -- I just quit my programming job last month and have no idea wtf to do in the future.

Øystein, Friday, 18 December 2009 12:48 (fourteen years ago) link

I had heard that C++ had lost out a lot to Java and Visual C++ to C#, and meanwhile C is still going strong for embedded systems, which C++ is largely unsuited to. But I have never been paid to write in any of those languages so I dunno.

When I was last job-hunting I put just about every language I had even basic knowledge of, and a specialist IT recruiter told me it was confusing and I needed to narrow it down. So don't do that.

I suppose that sounds obvious (writing 30-line programs in yr spare time or in lol college != doing useful work on a real major project), but when your core skills - and I'm not sure I have any - are kind of limited and obsolete, and your jobs to date have involved a lot of whatever nobody else wants to do that day but thinks you can pick up as you go...

brett favre vs bernard fevre, fite (a passing spacecadet), Friday, 18 December 2009 13:23 (fourteen years ago) link

I have a good front-to-back knowledge of web development, from html to java, and i do put it all on my cv, but I try to position myself as a java developer. Still most of the stuff i get from agents is for entry level html crap. Basically all agents are know-nothing cunts.

poster x (ledge), Friday, 18 December 2009 13:48 (fourteen years ago) link

is it worth learning to use stuff like eclipse and that because i guess while most people can do java C++ fewer people will know how to work with the specfic development tools etc?

I sb'ed your mum (ken c), Friday, 18 December 2009 16:37 (fourteen years ago) link

It might also be helpful to learn about recursion, as told by H.P. Lovecraft:

http://www.bobhobbs.com/files/kr_lovecraft.html

o. nate, Friday, 18 December 2009 17:47 (fourteen years ago) link

3. Make up for lack of degree w/ experience (fuck going back 2 school)

I kind of sort of have this covered at my current position, but I'm sort of an ad hoc backwater one-person band supporting a group in a hardware company, so there's not a lot of support for me but also not a lot of priority given to me vis-a-vis promotions, accumulating job skills past a rudimentary point, etc. It's good for financial security, but if I need/want a real developer's job, I feel a bit underqualified, thus thinking about doing school part time to get a BA/BS. And that goes to Sock Puppet's 3b; I'm a bit intimidated by the mathier stuff on my own, I do much better in a classroom.

I have some Java on me now, I'm taking a C++ class at jr. college this Winter Q.

Leee, Friday, 18 December 2009 21:22 (fourteen years ago) link

People who say #2 don't know what they're talking about.

Re: outsourcing -- does it matter that I work in Silicon Valley? I tend to assume that if the general trend is towards outsourcing programming, SV would be the place where it happens first.

Leee, Friday, 18 December 2009 21:24 (fourteen years ago) link

is it worth learning to use stuff like eclipse and that

i guess it'd be a good idea to know how how yer basic ide works but no point going out of your way to learn any particular one. once you know one you know them all, more or less.

poster x (ledge), Friday, 18 December 2009 21:32 (fourteen years ago) link

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

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...

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

four years pass...

Programmers are the magicians of the modern age

calstars, Sunday, 8 June 2014 21:36 (ten years ago) link

Not the ones I've known. And I've known more than a few.

Aimless, Monday, 9 June 2014 04:56 (ten years ago) link

buncha putzes

j., Monday, 9 June 2014 05:09 (ten years ago) link

Programming is the worst

Nhex, Monday, 9 June 2014 06:46 (ten years ago) link

DevOps is the worst.

koogs, Monday, 9 June 2014 10:32 (ten years ago) link

Software Engineer USA™

, Monday, 9 June 2014 16:04 (ten 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 (ten 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 (ten 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 (ten years ago) link

professional googlers

lag∞n, Monday, 9 June 2014 16:10 (ten 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 (ten 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 (ten years ago) link

^^ thank you

sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:11 (ten 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 (ten 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


From the dudes I've met, I get the impression many of them think they do have superpowers and can basically write a piece of software/webapp to solve just about any social/civic/political issue

, Monday, 9 June 2014 16:12 (ten 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 (ten years ago) link

working with computers makes people feel very powerful because computers are powerful

lag∞n, Monday, 9 June 2014 16:13 (ten years ago) link

bring back punch cards

sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:14 (ten 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 (ten years ago) link

I feel like 'engineer' is fair

sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:18 (ten years ago) link

you are designing and building something more abstract, but you are still designing and building something

sufi john paxson (Sufjan Grafton), Monday, 9 June 2014 16:18 (ten years ago) link

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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten 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 (ten years ago) link

Silicon Valley Techno-Utopianism

₴HABΔZZ ¶IZZΔ (Hurting 2), Monday, 9 June 2014 22:19 (ten years ago) link

programmers are horrible estimators

Guilty as charged.

Chewshabadoo, Monday, 9 June 2014 22:42 (ten years ago) link

Can I still charge by the hour though?

Chewshabadoo, Monday, 9 June 2014 22:42 (ten years ago) link

^Just call yourself a consultant instead of a freelancer and you should be good

, Monday, 9 June 2014 22:53 (ten years ago) link

Every year my dad never fails to ask me to go to this one Oracle conference with him

programming as a carer

dn/ac (darraghmac), Monday, 9 June 2014 22:54 (ten years ago) link

three months pass...

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 (ten years ago) link

If I had to do it all again...I wouldn't.

calstars, Tuesday, 30 September 2014 19:53 (ten 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 (ten 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 (ten years ago) link

Programmers are the magicians of the modern age

― calstars, Sunday, June 8, 2014 2:36 PM

Aimless, Tuesday, 30 September 2014 19:59 (ten years ago) link

I wish I had have given up on both attempts at programming and IT careers long before they happened

Nhex, Tuesday, 30 September 2014 20:06 (ten years ago) link

On my desk at work I have five (count 'em) Blackberrys rebuilding while I curse the chimps who made BES.

wackness unlimited (snoball), Tuesday, 30 September 2014 20:12 (ten years ago) link

I wish I had have given up on both attempts at programming and IT careers long before they happened

otm

i'd love to know what i was doing now in the alternate universe where i never thought "spending every evening staring at the computer" was in any way sufficient grounding for an attempted (flunked) CS degree or IT career

club mate martyr (a passing spacecadet), Tuesday, 30 September 2014 20:24 (ten years ago) link

I'm going to be doing a lot less programming per se, after finally having mastered Windows desktop app development (after yeeeears of mostly-backend web development and deployment) I have accepted a position as an enterprise service bus developer. So I'll be connecting services and defining queues and working with project teams to determine how to hook their projects up to the ecosystem.

⌘-B (mh), Tuesday, 30 September 2014 20:35 (ten years ago) link

fwiw I don't think I've ever felt a business client was dumb, although moments where they might not understand the concepts they're asking for me to implement has definitely happened

I wish all the luck to anyone having a rough time of it with their job, though!

⌘-B (mh), Tuesday, 30 September 2014 21:03 (ten years ago) link

hi guys

do u mind not bumping this thread the week I go back to 14 hr days studying evenings in computer science PS yr new job sounds boss mh

zero content albums (darraghmac), Tuesday, 30 September 2014 21:37 (ten years ago) link

computer science is awesome and is not just programming so you are good

GhostTunes on my Pono (Sufjan Grafton), Tuesday, 30 September 2014 21:47 (ten years ago) link

feel like programming is better than it used to be. wish we'd had unit tests and code reviews when i was a programmer, i wouldn't have sucked so bad.

ugh (lukas), Tuesday, 30 September 2014 21:58 (ten years ago) link

my coworker is annoyed because I get to move back to a cubicle from our team cave and will no longer be on a scrum team

actually I'm taking the cube he had before we moved in here. muahaha

⌘-B (mh), Tuesday, 30 September 2014 22:00 (ten years ago) link

friend just moved to california because he was hired by facebook.

said friend, for as long as i've known him, used to have socialist and even some anarchist tendencies, used only debian, hated microsoft, loved open source, liked kernel programming, turned down a job at google, and was just generally super geeky.

i guess this is what fatherhood does to a man?

, Tuesday, 30 September 2014 22:45 (ten years ago) link

yup, makes you sell out and suck

Nhex, Tuesday, 30 September 2014 22:47 (ten years ago) link

feel like if u guys h8 programming so much u shd at least move to ca and make bank

lag∞n, Tuesday, 30 September 2014 22:49 (ten years ago) link

nah i just dropped out of college instead and had a miserable life instead

Nhex, Tuesday, 30 September 2014 22:49 (ten years ago) link

*cutcutcut*

Nhex, Tuesday, 30 September 2014 22:50 (ten years ago) link

xp one could conceivably end up in san jose or something. is it worth the risk?

GhostTunes on my Pono (Sufjan Grafton), Tuesday, 30 September 2014 22:55 (ten years ago) link

no one can make u go to san jose if u dont want to

lag∞n, Tuesday, 30 September 2014 22:58 (ten years ago) link

he definitely wanted to. i'm happy for him

, Tuesday, 30 September 2014 23:03 (ten years ago) link

I like working with scientific data that's not people's personal info, makes me feel mildly ethical

⌘-B (mh), Tuesday, 30 September 2014 23:16 (ten years ago) link

xp one could conceivably end up in san jose or something. is it worth the risk?

If you can get a big salary, sure, why not. SF is always accessible via rail.

OTOH all the dweebs looking to disrupt something or other.

cichleee suite (Leee), Tuesday, 30 September 2014 23:20 (ten years ago) link

OTOH all the dweebs looking to disrupt something or other.

+ forthcoming crash + worthless equity instead of cash + lack of professional engineering culture + “boys being boys”

Allen (etaeoe), Wednesday, 1 October 2014 16:01 (ten years ago) link

yall know u dont have to work for a startup tho u cld go work for an agency that then hires you out on a contract basis to whatever companies and you make a ridiculous hourly rate w no investment or real responsibility, dont have to worry abt acquiring/managing clients like if ur freelance, and can take time off between jobs if ur fed up

lag∞n, Wednesday, 1 October 2014 16:06 (ten years ago) link

tbf u dont have to be in cali to do that anyplace w a decent tech/finance/etc sector is good

lag∞n, Wednesday, 1 October 2014 16:07 (ten years ago) link

youll end up working on pretty lame/tedious/soul crushing stuff a lot of the time but hey if u already h8 programming whats the diff and the benefits of $$$/time off are pretty great

lag∞n, Wednesday, 1 October 2014 16:09 (ten years ago) link

Yeah. I’m fortunate. If you’re interested in systems or scientific computing, it’s easy to find a position in Boston with excellent compensation, strong engineering culture, and technology that’s understood and documented. Hell, I’m writing Erlang professionally. Erlang!

Allen (etaeoe), Wednesday, 1 October 2014 16:12 (ten years ago) link

sounds like a greeting erlang mlady! maybe u shd say that to ur cpu when u fire up in the morn

lag∞n, Wednesday, 1 October 2014 16:14 (ten years ago) link

lol

⌘-B (mh), Wednesday, 1 October 2014 16:47 (ten years ago) link

sounds like a greeting erlang mlady! maybe u shd say that to ur cpu when u fire up in the morn

LOL

Are you programming professionally? What are you doing?

Allen (etaeoe), Wednesday, 1 October 2014 16:47 (ten years ago) link

lagoon is a web developer, mostly frontend, iirc

⌘-B (mh), Wednesday, 1 October 2014 16:49 (ten years ago) link

omg he develops the web?

zero content albums (darraghmac), Wednesday, 1 October 2014 16:50 (ten years ago) link

only the interesting parts

⌘-B (mh), Wednesday, 1 October 2014 16:52 (ten years ago) link

We should start a consultancy.

Allen (etaeoe), Wednesday, 1 October 2014 16:53 (ten years ago) link

ya i wild say im more of a designer but i am getting a little better at programing, i made a jquery function yesterday that i was proud of

not really doing anything professionally atm, been on extended hiatus the last few years doing freelance stuff here and there and even doing a bunch of not sitting in front of a computer type work which was p cool but imna have to get back to the grind soon tryina figure out what to do

lag∞n, Wednesday, 1 October 2014 16:53 (ten years ago) link

We should start a consultancy.

― Allen (etaeoe), Wednesday, October 1, 2014 12:53 PM (27 seconds ago) Bookmark Flag Post Permalink

im in get at me dawg

lag∞n, Wednesday, 1 October 2014 16:54 (ten years ago) link

Hell, I’m writing Erlang professionally. Erlang!

How are those loops treating you oh wait.

cichleee suite (Leee), Wednesday, 1 October 2014 16:57 (ten years ago) link

where do I send my resume I will consider menial tasks but the money must be exceptional

zero content albums (darraghmac), Wednesday, 1 October 2014 16:57 (ten years ago) link

computer science is awesome and is not just programming so you are good

Been struggling with this myself, last few classes I've had trying to get a CS degree were the most miserable of my life, and I've gone through getting a Humanities grad degree. Is the CS degree worth it?

cichleee suite (Leee), Wednesday, 1 October 2014 16:58 (ten years ago) link

I actually don't know that much about it. I took a logic design course in undergrad that I thought was awesome (though just reading nand2tetris is probably more fun). and most of the grad students that I met in CS (I'm EE) were doing cool things like writing experimental shit for 3d phones.

GhostTunes on my Pono (Sufjan Grafton), Wednesday, 1 October 2014 17:00 (ten years ago) link

I loved nand2tetris!

im in get at me dawg

Does your ILX mail work?

Allen (etaeoe), Wednesday, 1 October 2014 17:05 (ten years ago) link

ya i think so, i just tried to to DM it to u but i couldnt find u did u go off the tweets or something

lag∞n, Wednesday, 1 October 2014 17:11 (ten years ago) link

one year passes...

do any ilxors have web scripting type expertise? my company is looking for someone for a quick freelance turnaround job. i feel silly advertising it on ilx but i'd prefer to give the work to someone i [somewhat] know if possible

Mordy, Wednesday, 2 December 2015 17:15 (eight years ago) link

one year passes...

I'm looking for a new software engineering job and I thought with 7 years (5 for real) on my rez, that I'd have gotten something a lot sooner than I have. I've been looking since late March, have had something like 8 on-site interviews, and 7 have already passed on me (the 8th said they'd get back to me by yesterday, so either their discussions are lengthening out or they're contacting the other candidate before they get to me).

I just need to vent/commiserate a little. I don't know if 8 on-sites is a lot, but doing that many (plus the coding challenges to get to that point) has exhausted me, and that I've yet to get an offer makes me feel undeserving as a programmer. (Thought tbf, a lot of questions have been intro algorithm stuff that I've forgotten about, since I don't actually use them at work.) I ought to take a break, but then someone gets in touch with me and I feel like I can't pass up any opportunity. I'm sure being in SF means I'm competing with loads of other people, but then, the demand should be there too.

Leee Media Naranja (Leee), Friday, 16 June 2017 17:56 (seven years ago) link

That might be the only place where it's a problem at that scale. At that software architecture conference I was at in NYC, we were commiserating about how it's nearly impossible to find anyone to fill positions that require some experience.

mh, Friday, 16 June 2017 18:08 (seven years ago) link

xp

Did you get that CS degree in the end?

Just keep going, it'll happen. It's tough everywhere. Craft yourself a silver bullet. etc etc . Well that's what my friends are telling me, I've been applying since February and not had a single interview yet - and that's just for office admin or Excel work.

I'm am also trying to get my foot in the door on programming now but with no degrees or previous work experience it's not going to be easy, and at my age I don't see it happening ever.

PressAnarchyToContinue (Ste), Friday, 16 June 2017 20:03 (seven years ago) link

Ste, I dorm nt finish the CS degree because for the type of development I was and have been doing, the program was not offering me anything useful. (I mean, maybe I'm working for the wrong companies, but I only ever use hashes and arrays.)

A lot of places have been asking me for my Github link, even though I've only used it for coding challenges. However, you might use that as a portfolio to show to recruiters. Also, concentrate on learning front end languages, especially React, which is the hot new thing.

Leee Media Naranja (Leee), Friday, 16 June 2017 21:06 (seven years ago) link

Apropos of nothing, but I just looked at attending a full time clown college.

Leee Media Naranja (Leee), Friday, 16 June 2017 21:08 (seven years ago) link

I work at a university and get a tuition waiver. Considering whether to get a second BA (which will interest me but will not help my career prospects), or do CS. Just wondering if anyone here is, like me, by inclination more "right-brained" humanities inclined and how they fared learning CS.

-_- (jim in vancouver), Friday, 16 June 2017 21:13 (seven years ago) link

I'm a BA in English and an MA in Humanities, and I sort of stumbled into CS. That was about 7 years ago, and I'm struggling to find a new place, but I right now am working full-time as a developer.

Leee Media Naranja (Leee), Friday, 16 June 2017 21:34 (seven years ago) link

i just got this book: http://www.crackingthecodinginterview.com/

it looks fun.

brimstead, Saturday, 17 June 2017 00:55 (seven years ago) link

A recruiter at a big SV tech firm suggested that I buy that book, in fact.

Leee Media Naranja (Leee), Saturday, 17 June 2017 17:24 (seven years ago) link

yeah it's the canonical book

Choco Blavatsky (seandalai), Saturday, 17 June 2017 19:26 (seven years ago) link

two weeks pass...

Still no luck, but I've asked a bunch of people, and they say that looking foro 3 months isn't out of the ordinary.

Another obstacle I think could be that I'm search during the spring/summer, which means that I'd be competing with new grads. (Kids ruin everything.)

Leee Media Naranja (Leee), Monday, 3 July 2017 21:32 (seven years ago) link

As someone who's been in the industry for 20 years, I think the whole interviewing/hiring thing is really messed up right now. No one knows how to interview or what experience or credentials matter or if they matter. There's lots of work, but lots of candidates.

The truth is, coding interviews are often a bit more cultural than people want to cop to.

It can easily be a long slog. Keep in there.

fajita seas, Tuesday, 4 July 2017 02:48 (seven years ago) link

for sure

my group has a devops position open and it probably should be listed as a higher paid position. my manager outlined as what he put as "required" and I was kind of in disbelief, because it was incredibly idealized. but the truth is that any candidate will only have 2/3 of the things we want but should be able to explain why they're a good fit.

I jokingly asked if it'd pay better than my job and the answer was no for two reasons: it's listed at my pay grade, and even if it was listed at a higher level, HR would push for it to be a parallel move. rude.

mh, Tuesday, 4 July 2017 02:52 (seven years ago) link

If you're not on a pager rotation now and the new position has you on call outside of work hours (which would be common on devops), that is commonly a pay increase at large companies. It certainly is an uptick is commitment.

fajita seas, Tuesday, 4 July 2017 14:36 (seven years ago) link

I think we’re not there yet – our dev ops has a small cloud component, but it’s mostly the build/deploy/monitoring part of the pipeline, and making sure some help desk tools (jira, confluence) are up and running. So it’s less availability than configuration tools

mh, Tuesday, 4 July 2017 15:11 (seven years ago) link

one year passes...


public CompanyNameJsonBuilder_Factory(
Provider<ContextSupplier<CompanyNameJsonArgs>> jsonFieldSupplierProvider,
Provider<ContextSupplier<CompanyNameArgs>> controllerSupplierProvider,
Provider<Supplier<RoutingConfig>> routingConfigProvider) {
...
}

(╯°□°)╯︵ ┻━┻

koogs, Monday, 26 November 2018 16:06 (five years ago) link

Like someone’s worst nightmare of overdesigned Java.

o. nate, Monday, 26 November 2018 16:08 (five years ago) link

if you're writing code that only you can understand then you aren't being clever, you are being a dick. programming as part of a team means writing code that the entire team can understand and maintain.

koogs, Monday, 26 November 2018 16:20 (five years ago) link

programming means writing code that anyone can understand and maintain.

fixed

Newsted joins this band and quickly he’s subdued (Leee), Monday, 26 November 2018 22:12 (five years ago) link

One place I worked at, someone made this independent decision to learn Groovy by building one of our systems in it. It was all I heard about for years after he left.

Yerac, Monday, 26 November 2018 22:18 (five years ago) link

it took me almost a year to find a job with 10+ years experience this go-round; i should write a book about all the dumb early-stage NYC startups vett3ry and their ilk kept sending me to (crypto for the publishing industry! uber for ambulances!)

i've been at this new (permanent) gig for like three weeks now and i'm finally starting to settle in a little; i've probably pigeonholed myself as a digital agency guy forever, but i really like this one. unlike other senior/lead/etc titles i've had in the past, this one isn't bullshitting me; i have actual responsibility. my current client is hell-bent on using wordpress as a headless cms to serve graphql to react, which i am...less excited about.

the portentous pepper (govern yourself accordingly), Monday, 26 November 2018 22:24 (five years ago) link

your client is high as a goddamn kite

I have measured out my life in coffee shop loyalty cards (silby), Monday, 26 November 2018 23:31 (five years ago) link

three months pass...

PY wants to merge 4 commits into master from multi-s3

+427 lines -105 lines

zero comments on what the changes do

koogs, Wednesday, 20 March 2019 09:23 (five years ago) link

(same person added java 11 to the CI workflow the day after it was released)

koogs, Wednesday, 20 March 2019 09:29 (five years ago) link

Any tests, or is that a silly question?

Andrew Farrell, Wednesday, 20 March 2019 09:31 (five years ago) link

Just a test of patience, it sounds like

Vinnie, Wednesday, 20 March 2019 09:33 (five years ago) link

there are unit tests but they don't explain what they are doing either.


public void itReturnsAnS3ClientByGettingAnSTSCredentialProviderUsingTheBucketToRoleArnMapping() throws Exception

koogs, Wednesday, 20 March 2019 10:02 (five years ago) link

(that's one of the unit tests)

koogs, Wednesday, 20 March 2019 10:02 (five years ago) link

That test name /sounds/ descriptive to me, but I don't know enough about the Amazon cloud to know what it means, so ... i assume ARN is a thing that makes sense in your domain :o

We added a commit-hook some years ago that rejected every commit that had less than N characters in the commit message.
It helped, though we still get people who will just do like 10 commits in a row that's just the same jira issue number over and over, with no explanation of what the various changes actually are.

I might actually BE that guy though. I made a small commit yesterday where my message was something vague like "optimized and made easier to read". Immediately got a message from someone telling me he couldn't read the code anymore. D'oh.

Øystein, Wednesday, 20 March 2019 12:41 (five years ago) link

I should probably take this to the 77 thread, but the branch a colleague has merged in has four commits, all saying 'initial changes'

Andrew Farrell, Wednesday, 20 March 2019 13:07 (five years ago) link

The aforementioned no comments / Java 11 guy is my new team lead. He is half my age.

koogs, Friday, 29 March 2019 19:25 (five years ago) link

we just went to 8 a few months ago. very cool but we're pretty much left to Google everything.

frogbs, Friday, 29 March 2019 19:26 (five years ago) link

Literally half my age. I was programming, professionally, before he was born.

koogs, Friday, 29 March 2019 19:27 (five years ago) link

Ugh, sorry.

Theorbo Goes Wild (James Redd and the Blecchs), Friday, 29 March 2019 21:12 (five years ago) link

oof... trying to find some black humor - failing.

Elvis Telecom, Sunday, 7 April 2019 00:23 (five years ago) link

Turned 30 a couple months ago and I hope to be in a non-programming role by 31

moose; squirrel (silby), Sunday, 7 April 2019 02:14 (five years ago) link

Personally, I'm >40 and honestly the best stuff I've worked in has been in the last 10 years.

But there's lots of places where what's important to the craft isn't defended, and I sometimes leave quickly when that happens.

I've come to appreciate the style guides, reviews and processes of my megacorp because they prevent a good fraction of this kind of shit. Just read about something on hackernews and want to check it in? Sorry, let's slow that shit down because everyone has to buy in first. Want to make a big change? Yes you can. but you have to be able to explain and defend it.

fajita seas, Sunday, 7 April 2019 02:26 (five years ago) link

On Thursday we discovered that a big part of the project that we've been doing for the last 8 months just wasn't implemented. It had been overlooked.

On Friday we discovered that another big part of the project that we've been doing for the last 8 months just wasn't implemented.

Neither were in code I wrote, but both were in components that I reviewed and missed. Both were things that were meant to be configurable but weren't. I've never liked the way things are specced out here, not enough detail, and in both cases the things were new requirements in tickets where the ticket titles suggested there were no new requirements, just reimplementations of existing functionality. But two balls have been dropped and I feel slightly responsible.

koogs, Sunday, 7 April 2019 03:28 (five years ago) link

Yeah, badly written stories is something we try to identify quickly. Is there a scrum master that can help out? Not drinking the Agile Kool Aid, but I’ve found that good SMs, which are kind of hard to find, are helpful.

John Jacob Jingleheimer Schmidt, Sunday, 7 April 2019 03:41 (five years ago) link

not sure we have a 'scrum master' as such. we don't really subscribe to the agile thing fully.

we've had problems with tickets before - there was one set of BDD scenarios attached to one piece that i implemented only to later be told that it belonged to something further down the workflow. (we were redoing the entire workflow, i didn't know enough about it, figured it was being moved as part of the rewrite, i lost 3 weeks doing that, argued with the writer who insisted he was right)

the new bit isn't that onerous - we currently have a bunch of things

A1
A2
A3
B1
B2
B3
C1
C2
C3

where all the As are grouped as a kind by the configuration and currently ignored, and then all the remaining 1, 2, 3s are processed appropriately. but now they want A3 to be treated specially. we could do that in code but, like the other new piece, they want it in config to make it easier for OPS to support and the current structures can't differentiate between the cases.

it needs a rules engine really. but everybody i know that has used one has had a terrible time of it. and i just can't trust something called "Drools".

koogs, Sunday, 7 April 2019 14:27 (five years ago) link

My workplace just appointed me scrum master for life. Apparently all this means is you have to hold 15-minute long meetings every morning where everyone talks about what they’re going to work on during the day. All I have to do is facilitate the meeting and make sure we all stay on task. That can’t be too hard, can it?

Mr. Snrub, Sunday, 7 April 2019 16:13 (five years ago) link

I'm all in favour of agile methodology but the terminology for some reason makes me physically sick. Kanban, burndown charts, and worst of all scrum master (apologies Mr Snrub).

Jesus christ I am not in favour of this shit: https://www.agilealliance.org/glossary/nikoniko/

what if bod was one of us (ledge), Monday, 8 April 2019 08:24 (five years ago) link

I'm starting to get brought into those meetings as a "specialist" and it kinda feels like I just joined a cult

frogbs, Monday, 8 April 2019 13:37 (five years ago) link

i was gonna say - "ceremonies" is even worse jargon than the ones cited above. every single 'retrospective' in my team becomes someone questioning the merits and demerits of scrum v kanban or vice versa. there are some major zealots for agile and within that there is zealotry for methodologies and ways of working. equally, it's so nebulously defined that if somebody doesn't like a suggestion or a comment about how the team works, they might say 'that's not very agile' as if we are all being watched by the agile god who will smite us for offending him, even though someone else's creed would insist that 'yes, in fact defining roles and responsibilities is a good thing to do for any agile team"

i didn't work in software development before agile and i can imagine it is largely a force for good, but it is tiresome too.

FernandoHierro, Monday, 8 April 2019 13:41 (five years ago) link

i am in hardware, and we are doing this now

say it with sausages (Sufjan Grafton), Monday, 8 April 2019 13:42 (five years ago) link

another classic is people hiding behind agile to avoid doing things. like i have a delivery manager currently and he's like 'the way we work in agile, it's we as a team who decide how we will organise our work' and this is sort of his excuse for not even gathering info, collating the team's views, or trying to inform discussions in the team to a point that such a collaborative approach might be even vaguely useful or feasible.

it often ends up reminding me of that simpsons with the 'i DO... what i FEEL like' guru - i've worked in other places where it 'wasn't agile' to be unhappy that a colleague took a month off at short notice in a majorly busy time, or like it's 'not agile' to express a negative opinion, etc etc etc.

xpost

FernandoHierro, Monday, 8 April 2019 13:45 (five years ago) link

xp

my experience of agile has largely been that it's a way for management to abdicate any responsibility whatsoever for running a project, because deciding on requirements or planning anything is not agile. just give a vague idea to development and tell them to get on with it, then complain when what frustrated developers come up with isn't what they imagined in their heads

my current manager doesn't bother with retrospectives "because people complain about things but nothing ever changes" which at least is "refreshingly honest"?

Colonel Poo, Monday, 8 April 2019 13:46 (five years ago) link

i think our retros are useless for that reason, but it points to a problem of culture when they never result in change.

i think a huge problem with agile is the delivery manager (or scrum master) ends up as some middle management type who thinks their job is to maintain discipline and do the odd job interviews when in fact for it to work well it's more of a servant leader role. i had a delivery manager who like cleaned the desks every morning and evening. when i first started i thought it was absurd and then over time i realised that he would do literally every possible thing to make your work and the delivery of the team's work go more smoothly, he would meet anyone on your behalf, he would help you in any way he could. like your parents when you're a kid or something, i prob didn't appreciate that enough at the time!

FernandoHierro, Monday, 8 April 2019 13:50 (five years ago) link

admittedly when I had my performance review recently I said to her "I don't know why we persist with this ridiculous charade" so I guess I'm in the same position

Colonel Poo, Monday, 8 April 2019 13:52 (five years ago) link

lol - they really highlight it though - same problems every week and nobody doing anything.

FernandoHierro, Monday, 8 April 2019 13:56 (five years ago) link

we have not as yet managed to seamlessly integrate agile into our lean prince2 philosophy but otoh our servicedesk is itil'd to an inch of its life

fremme nette his simplicitte (darraghmac), Monday, 8 April 2019 14:31 (five years ago) link

turns out the bulk of the unimplementated functionality was in the Epic ticket (and not expanded beyond note form), and didn't make it to the Story tickets we were assigned and were working from...

koogs, Monday, 8 April 2019 16:58 (five years ago) link

most people are terrible at writing (tickets)

FernandoHierro, Monday, 8 April 2019 17:01 (five years ago) link

Yeah, that's why when I brought it up I didn't mean for it to be a be all and end all. I can go on for days about the problems agile has. My experience has been mixed.

In hindsight, I agree with Fernando that a scrum master is supposed to help things run smoothly. The best scrum master I ever had so far was this way. And I grew to deeply appreciate her work.

Having said that, agile is rarely fully implemented in most organizations I've heard of, which is what makes it such a difficult thing to pin down and criticize. Theoretically, yes, it should work, but in practice it's always this weird subpar version of agile that is used.

Anyway, koogs, glad that some(?) of it was figured out. Hope things improve!

John Jacob Jingleheimer Schmidt, Monday, 8 April 2019 17:51 (five years ago) link

my worst "agile" experience involved daily stand ups with 50 people in. about as agile as a concrete elephant.

what if bod was one of us (ledge), Monday, 8 April 2019 18:06 (five years ago) link

We are up to 15 or so if everybody's in. Worst part is that it's a long, narrow space so you can't hear people standing on the far side. And one of them has a habit of standing directly in front of me.

There's definitely been some lack of reading of requirements, that thing where you're so certain of what you're doing that you don't check, but I don't think we're entirely to blame. Deploying to live tomorrow regardless.

(If we had done the missing bits we wouldn't be done yet, so...)

koogs, Monday, 8 April 2019 18:22 (five years ago) link

wait do ye actually get requirements

fremme nette his simplicitte (darraghmac), Monday, 8 April 2019 18:27 (five years ago) link

Having said that, agile is rarely fully implemented in most organizations I've heard of, which is what makes it such a difficult thing to pin down and criticize. Theoretically, yes, it should work, but in practice it's always this weird subpar version of agile that is used.

yeah i think that prob is true of almost all my four/five years experience with it - it prob sounds almost cliched but imo the organisation has to be trying to develop a culture of agile top to bottom for it to really work. that's the diff between standups where nobody bothers to try to run them effectively and yeah, it's 50 people and taking 70 minutes, versus actually seeing how short the standup can be. i actually think standups are a p good example of the cultural stuff - one place i worked anyone who went off topic or too in-depth would instantly be told this, but because it was something we did in the team, and because the place was a really nice place to work, and because we all socialised with each other, and because we had good retros etc etc etc, it never felt rude or snippy, it just was a culture where productivity and questioning things was encouraged in a democratic way.

in other places the same dude drones on in a standup trying to aggrandise his own importance/authority, tho eventually someone will fix it. i guess it's all connected tho. constant shit tickets/badly scoped work leads to longer standups, retros clogged with issues of scoping etc. the delivery manager or scrum master (i've seen the same role called either but ymmv) really is the key.

FernandoHierro, Monday, 8 April 2019 18:37 (five years ago) link

tbh when I eventually crack up and rage quit my job I may have "must not be an agile environment" for my job requirements, I've been suffering the scourge of agile for 10 years now and enough's enough

Colonel Poo, Monday, 8 April 2019 19:16 (five years ago) link

Are there any decent size development teams/companies that are not agile?

Working at a startup is such a gamble.

John Jacob Jingleheimer Schmidt, Monday, 8 April 2019 20:23 (five years ago) link

everybody says they are agile, no matter what their process or lack thereof is

moose; squirrel (silby), Monday, 8 April 2019 20:44 (five years ago) link

This is all very useful. Thanks everyone!

Mr. Snrub, Monday, 8 April 2019 20:48 (five years ago) link

has it gotten to the point where college students interested in software engineering are warned that this kind of thing is actually going to be a major part of their day-to-day, or even forced to take courses on it?

because those poor saps who are just into coding and wanna code for a living, lol

j., Monday, 8 April 2019 20:59 (five years ago) link

I'm in favor of any process which prevents code from getting written

moose; squirrel (silby), Monday, 8 April 2019 21:07 (five years ago) link

I was told from my first CS course that all the coding is done by subsubcontractors in India

brimstead, Monday, 8 April 2019 21:19 (five years ago) link

In my experience, coding is probably only 40-60% of your day to day anyway. Unless you’re on a refactoring spree, I guess. But so much time is already wasted in meetings planning, strategizing, designing, redesigning and generally trying to communicate

Communication is such a huge part of the job and a skill that hardly anyone tells you going into this line of work that you really need to work on, I think.

John Jacob Jingleheimer Schmidt, Monday, 8 April 2019 21:21 (five years ago) link

my job is p much to do the communicating on behalf of our programmers but i also get the coffees

fremme nette his simplicitte (darraghmac), Monday, 8 April 2019 21:22 (five years ago) link

You want to move to the states, darragh?

I've been starving them, teasing them, singing off Leee (Leee), Monday, 8 April 2019 21:50 (five years ago) link

cant afford to, the pension here is just unfuckwithable

fremme nette his simplicitte (darraghmac), Monday, 8 April 2019 21:53 (five years ago) link

The rise of DevOps is insidious too. I can spend whole days doing cloudformation templates or worrying about cnames. That's no fun.

koogs, Tuesday, 9 April 2019 03:46 (five years ago) link

has it gotten to the point where college students interested in software engineering are warned that this kind of thing is actually going to be a major part of their day-to-day, or even forced to take courses on it?

because those poor saps who are just into coding and wanna code for a living, lol

― j., Monday, 8 April 2019 13:59 (eight hours ago) Bookmark Flag Post Permalink

I was told from my first CS course that all the coding is done by subsubcontractors in India

― brimstead,

I keep reading this, but 80% of my job is writing code for new features, 10-15% fixing bugs or fishing information out, and 5% any of this other stuff. standup is done in slack

cherry blossom, Tuesday, 9 April 2019 05:52 (five years ago) link

Do you mean devops as a job function or title? I barely have to deal with that because we have a dedicated devops, and any other infrastructure stuff that touches code gets handled by our lead developers.

I'm getting more responsibilities at my current place, meaning more meetings, and I've gotten a reputation as the unit tests guy, so now I get more pull requests too. I'd say writing code, either for new features or tech sent, is 60-70% for me right now.

I've been starving them, teasing them, singing off Leee (Leee), Tuesday, 9 April 2019 06:19 (five years ago) link

devops, the way it used to be two jobs, both with largely different skill sets but is now one. i'm now supposed to be an expert on, i don't know, machine cofiguration and dns, rather than just software, stuff that people have years of training in but which i just google.

i get the nasty feeling that new team lead has just assigned himself the bits of software that haven't been written yet and is going to do them himself. which strikes me as... indelicate?

koogs, Tuesday, 9 April 2019 08:44 (five years ago) link

^ he did. Changed about a dozen files that we were working on yesterday, introduced new idioms into the code, used an editor that changed the whitespace on empty lines so that the diff was twice as large as it needed to be and then got another member of the team to review it. Didn't involve us at all. Just rude and it has fucking annoyed me.

koogs, Wednesday, 10 April 2019 06:38 (five years ago) link

I'm in a team that's basically enterprise services for our department -- providing things like queuing, workflow, etc. engines and pushing things like data governance so everyone can write code that uses the same concepts across development groups

learned last week at a conference that agile processes fucking up groups like mine is nearly universal. coordinating with other teams, even when multiple groups are working in the same realm, is something agile development groups refuse to do. so while it's kept project scope reasonable and kept groups on-task, it's a complete nightmare from a data analysis and reporting standpoint if anything works across multiple development teams

we're going to end up taking the carrot/stick approach: if you want to use the larger scale tools that make your development cycle easier, you're going to have to coordinate with the data governance committee

mh, Wednesday, 10 April 2019 18:08 (five years ago) link

Trying to keep track of all these different approaches and philosophies to software development/design is overwhelming. You’d think this would be the kind of thing we’d have learned about in CS school but no, we learned about AND, OR, and NOT gates.

Mr. Snrub, Wednesday, 10 April 2019 20:55 (five years ago) link

trouble is nobody actually knows how to develop software so it's impossible to teach

moose; squirrel (silby), Wednesday, 10 April 2019 21:04 (five years ago) link

otoh my work sends me on all these courses

i cant program for shit obv

fremme nette his simplicitte (darraghmac), Wednesday, 10 April 2019 21:08 (five years ago) link

learned last week at a conference that agile processes fucking up groups like mine is nearly universal. coordinating with other teams, even when multiple groups are working in the same realm, is something agile development groups refuse to do. so while it's kept project scope reasonable and kept groups on-task, it's a complete nightmare from a data analysis and reporting standpoint if anything works across multiple development teams

i've never seen collaboration team to team across a big overarching project work well, dunno if it's even possible. i'm more on the design/user experience side, mainly writing content based on research and working closely with interaction designers, and while there are reusable things and some general stuff that can be shared, i've also seen the pressure to treat the work like a patchwork quilt can end up totally ignoring the needs of users. i've learned to an extent, unless something is completely absurd, that if something appears odd or illogical to me in a project i didn't work on, there's a good chance it's fixing something that came up in user research that i didn't see. i mean, unless every element seems odd, then it might be just crap.

it could be i've never seen this collaboration work well because again, the people doing it are middle managers doing roles that require knowledge they don't have.

FernandoHierro, Wednesday, 10 April 2019 21:12 (five years ago) link

i mean i know in theory you have some flat structure with everyone dovetailing perfectly but i've also never seen that, seems to me you need some people who are good at facilitating collaboration and whose job it is to join the dots between things. but it always seems intensely difficult and complicated. planning one project is hard enough without another 20.

FernandoHierro, Wednesday, 10 April 2019 21:13 (five years ago) link

among the reasons why software should be developed by teams of two or three programmers and a manager embedded with every non-software organization doing almost anything instead of in huge software companies

moose; squirrel (silby), Wednesday, 10 April 2019 21:17 (five years ago) link

trouble is nobody actually knows how to develop software so it's impossible to teach

― moose; squirrel (silby)

trouble is nobody actually knows how to make software engineers rigorously follow the standards so it's impossible to implement anything elegantly.

nickn, Wednesday, 10 April 2019 22:21 (five years ago) link

if software developers were rigorous thinkers they'd be real engineers, for like bridges or something

moose; squirrel (silby), Wednesday, 10 April 2019 22:22 (five years ago) link

Hey now! [insert gif of the Tacoma Narrows bridge here]

nickn, Wednesday, 10 April 2019 22:24 (five years ago) link

Seem to recall something on Coding Horror once about how the majority of people who code never really get any better at it.

Theorbo Goes Wild (James Redd and the Blecchs), Wednesday, 10 April 2019 23:00 (five years ago) link

the software architecture conference I went to a few years back was enlightening!

at that level, it's all larger patterns, largely platform and implementation technology agnostic. that's obviously an approach that's hard to stick to when your in-house people immediately jump to the same bucket of tools, but there is the possibility of a pure vision

re: Fernando's comment about a big overarching project, our problem is that the entire business, which is a research-to-commercial pipeline, is in effect *one project*. so in order to gather metrics on the entire process, from the conceptual phase through the pipeline, you need a solid data model or there's no traceability. instead, we get a series of task systems that are single-purpose with minimal handoff between them

mh, Thursday, 11 April 2019 13:48 (five years ago) link

if yall think agile is bad, pray you never have to work at a place that implements SAFe

diamonddave85​​ (diamonddave85), Thursday, 11 April 2019 14:44 (five years ago) link

Moysey certainly couldn't manage it

cherry blossom, Thursday, 11 April 2019 15:15 (five years ago) link

Underlying principles of SAFe

1 Take an economic view
2 Apply systems thinking

Andrew Farrell, Tuesday, 16 April 2019 15:28 (five years ago) link

We had some SAFe ideology at a previous employer. The concept as a whole could never fly because developers still had a strong say in how to manage projects.

John Jacob Jingleheimer Schmidt, Tuesday, 16 April 2019 21:59 (five years ago) link

Hey, do this thing, it's quite urgent.

Ok, here you go.

Thanks, here are 6 pedantic review comments to slow you down...

Gah!


String processRequest() {
// do something here
// and here
String messageId = sendReply();
return messageId;
}


void someMethod(String input) {
if (input != null) {
// code that does something with input
}
}

koogs, Tuesday, 30 April 2019 11:44 (five years ago) link

(
the crime in the first one is that i could just return the result from sendReply, i don't need the local variable. the local variable makes it clear what the return value is and allows you to attach a debugger to something should you need to debug it.

the crime in the second one is that input cannot be null because the calling method has already checked it. i see no harm in checking it again just in case. also, you can't guarantee that future methods won't call this method with a null
)

i hate the nitpicking that is rife in programming. is it a male thing, i wonder. men will argue over anything.

koogs, Tuesday, 30 April 2019 11:51 (five years ago) link

I'm with you on point 2. what if someone else changes the calling method so it no longer checks for null?

thomasintrouble, Tuesday, 30 April 2019 11:58 (five years ago) link

Never submit anything 'perfect', always leave a little low hanging fruit. Though goes more for QA than PR!

cherry blossom, Tuesday, 30 April 2019 12:00 (five years ago) link

code looks fine on both of those, people need to stop nitpicking

if it’s some public library that’s on github or w/e maybe standardize the style a little but, on the other hand, Microsoft’s samples for their Azure services that they publish on github is much worse

mh, Tuesday, 30 April 2019 12:15 (five years ago) link

*are much worse

mh, Tuesday, 30 April 2019 12:15 (five years ago) link

I wish those were the types of issues that came up in code here!

Colonel Poo, Tuesday, 30 April 2019 12:32 (five years ago) link

that's my point - they aren't issues 8) why flag them and delay the fix that they wanted in the first place?

meanwhile, the new team lead, see above, is stinking the code up with cryptic syntax and bad config file formats but has such a superiority complex that he won't listen.

koogs, Tuesday, 30 April 2019 12:48 (five years ago) link

yeah I don't mind either of those. we deal with a lot of 3rd party software that uses our stuff so the more null checks the better.

also like it when code is easy to debug. I always get irritated when people write one line methods that invoke five separate calls, which can be really irritating to debug when something goes wrong. though Java 8 streaming and lambdas sorta encourage you to write this way, I've (luckily) never actually had a problem with those...they're like the one thing that actually work exactly how you want them to

frogbs, Tuesday, 30 April 2019 13:22 (five years ago) link

the impossible bargain of using higher-level APIs that just work 90% of the time versus the struggle to wean people off them when you've outgrown that use case

mh, Tuesday, 30 April 2019 13:29 (five years ago) link

My life has become easier due to recent versions of Eclipse (the Java IDE we use) having a debug variable for "that function we just came out of returned this!"

Andrew Farrell, Tuesday, 30 April 2019 13:39 (five years ago) link

I would have probably asked you to put in a null check if your method didn't have one. As much as possible you should never assume that any checks are going to be made before a function is called. This is basic stuff I would think.

First one is definitely a pointless nitpick.

silverfish, Tuesday, 30 April 2019 13:47 (five years ago) link

had a fun time refactoring something yesterday...we call a module which returns a bunch of class codes, which has four components...two numeric codes, a description, and an indicator. for whatever reason the programmer decided to return this as an UnmodifiableVector of String[], which you have to read vertically (vec.get(0)[index] + vec.get(1)[index] etc) to return a full result...which I guess worked fine until we had to filter some out. I don't understand why people don't just create objects for stuff like this. Creating objects makes your code so much more readable and it is also fun and rewarding

frogbs, Tuesday, 30 April 2019 13:52 (five years ago) link

I definitely agree that anyone nitpicking over this code has too much time on their hands. For the second, my personal preference would be to reverse the logic of the null check- ie if it’s null, throw- to reduce nesting, but I wouldn’t ever ask anyone to change it.

o. nate, Tuesday, 30 April 2019 13:56 (five years ago) link

I've really started to like the defensive coding strategy where the entire first section is null checking, validation, etc. and then the rest is just "do stuff"

also lets you throw the right exceptions more easily

mh, Tuesday, 30 April 2019 14:05 (five years ago) link

That vertical string array is one of the craziest things I've ever seen.

Andrew Farrell, Tuesday, 30 April 2019 14:56 (five years ago) link

i hate the nitpicking that is rife in programming. is it a male thing, i wonder. men will argue over anything.

IME reviewers do this when they don't feel like they have any other substantive to add, whether it's a gendered thing idk!

Perfect Leee Cromulent (Leee), Tuesday, 30 April 2019 16:48 (five years ago) link

True, I've done it myself, just to prove that I've read it in detail. But always try to phrase it as a comment rather than something that's wrong and must be changed

Certainly I don't keep insisting it's a problem after the writer has explained his reasoning, as happened here. (For example, I said that I used a local variable because it makes using the debugger easier and I was told that I should instead set a breakpoint in the calling function and use the special return value thing in the variables window. My way I get to *mouse over* the variable name *in the method i'm debugging*, no extra windows taking up screen space, nothing. Plus it explains what the return value is, whereas the method name isn't always obvious)

koogs, Tuesday, 30 April 2019 18:31 (five years ago) link

xp An error occurred. Please try again later. (Playback ID: gmdBDNX-8DB0KXgZ) lol

just another country (snoball), Monday, 6 May 2019 17:45 (five years ago) link

Please open a ticket

How I Redd One of the Blecchs (James Redd and the Blecchs), Monday, 6 May 2019 17:56 (five years ago) link

If the ticket management software is anything like the one I use at work, I'll have to make a second ticket when the ticket management software crashes when I try to make the first ticket.

just another country (snoball), Monday, 6 May 2019 18:05 (five years ago) link

What hub are you on?

Careless Love Battery (James Redd and the Blecchs), Tuesday, 7 May 2019 01:30 (five years ago) link

Please send a screenshot to the following distribution list: sixfootmeneh✧✧✧@vax✧✧✧.c✧✧

Careless Love Battery (James Redd and the Blecchs), Tuesday, 7 May 2019 01:34 (five years ago) link

Would it be cromulent to ask an intern candidate to differentiate a function that I need for work because they list calculus as a concentration?

Soccer Team's Philosophies and Hypotheses (Leee), Wednesday, 8 May 2019 01:34 (five years ago) link

Is that something they'd probably need to do on the job?

but everybody calls me, (lukas), Wednesday, 8 May 2019 02:30 (five years ago) link

they opened the door

j., Wednesday, 8 May 2019 02:46 (five years ago) link

Not normally! It's just that I'm working on a feature that requires equations that algebra can't solve, and I like human feedback to complement what Wolfram Alpha has given me.

Soccer Team's Philosophies and Hypotheses (Leee), Wednesday, 8 May 2019 05:31 (five years ago) link

I want, not I like.

Soccer Team's Philosophies and Hypotheses (Leee), Wednesday, 8 May 2019 05:39 (five years ago) link

four weeks pass...

Is SQL knowledge among developers something that's on its way out? And I don't mean DBA-level knowledge, just simple familiarity with basic selects, joins, etc.

It's all about the nosql now, I fear.

koogs, Friday, 7 June 2019 17:20 (five years ago) link

Probably, which is dumb, because databases are good, and it’s possible to use them in smart ways, but only if you know SQL, and nobody has designed a language other than SQL for RDBMSes that can actually use all their features efficiently as far as I know.

don't mock my smock or i'll clean your clock (silby), Friday, 7 June 2019 17:26 (five years ago) link

idk how common this is but where I work each team has its own database person. not that we really get any special privileges but we do get to optimize stupidly complex queries and run endless scans for marketing people

frogbs, Friday, 7 June 2019 17:27 (five years ago) link

I certainly haven't used sql in 5 years.

Database layers in code always used to be a faff, as was waiting for the DBA to write you a stored procedure to do what you needed.

That said, getting errors at 9am every morning because you've gone over your opaque iops limit in an aws hosted dB somewhere gets old quickly too.

koogs, Friday, 7 June 2019 17:30 (five years ago) link

(first job I had involved the sql-based Informix report generator language and I used to love crafting those reports)

koogs, Friday, 7 June 2019 17:32 (five years ago) link

i just used an sql query the other day!

j., Friday, 7 June 2019 17:59 (five years ago) link

it reeeeally depends on what you're doing

persistence and mapping frameworks are good enough now that, unless it's really high traffic or a very complex table structure, it's a good idea to *not* write your own queries

I think the new status quo is fine because developers wrote too much bad sql

mh, Friday, 7 June 2019 18:24 (five years ago) link

I wrote a few queries the last few weeks but they're being used in a data transfer tool

btw I'm all in favor of Apache NiFi now, as long as it's used intelligently. nice software!

mh, Friday, 7 June 2019 18:26 (five years ago) link

The trouble is using ORMs exclusively will not teach you how to design a database well, and depending on the ORM can teach you actively bad ways of using a database.

don't mock my smock or i'll clean your clock (silby), Friday, 7 June 2019 18:32 (five years ago) link

oh, for sure. someone else should be designing your database, but the majority of the people actually writing software to hit the database, no prob

do NOT do the code-first, auto-generate the database path if it's going to be hit by more than one application. a particularly bull-headed jerk of a former coworker apparently was the software architect for a piece of software where he did exactly that and he completely fucked the project and I think people realized he wasn't as good as he liked to claim. dude should not have been designing anything used by more than a couple people imo

mh, Friday, 7 June 2019 18:36 (five years ago) link

one month passes...

"Payment amount
£54.2400"

dunno who's doing the QA at (large electricity provider)'s website but they need to be better than they are.

had an hungarian tester once who did a report which contained a *mix* of european format numbers and english numbers. wasn't even consistent within the same one page email, really confusing. ie:

25,456 = 25 thousand 4 hundred and fifty six in english, 25 and 456 thousandths in hungarian

4.294 = 4 thousand 2 hundred and 94 in hungarian, 4 and 294 thousandths in english.

https://docs.oracle.com/cd/E19455-01/806-0169/overview-9/index.html

koogs, Friday, 12 July 2019 18:03 (five years ago) link

While not a “programmer” I love SQL - so simple, so elegant

calstars, Friday, 12 July 2019 18:39 (five years ago) link

Me too! I love that its grammar is so much closer to natural (english) language than anything else I've worked with. It's intuitive! More so for "verbal" people than "quantitative" people, I think, if that's a real distinction

Dan I., Friday, 12 July 2019 19:12 (five years ago) link

It’s a language for writers

calstars, Friday, 12 July 2019 19:14 (five years ago) link

y'all would love COBOL then :)

frogbs, Friday, 12 July 2019 19:32 (five years ago) link

I agree that SQL is intuitive and expressive for a large range of problems. Unfortunately it also leads developers to put a lot of business logic in the database which is kind of an anti-pattern.

o. nate, Friday, 12 July 2019 19:35 (five years ago) link

It never ceases to amaze me how much “mission critical” shit is written in toy languages designed to be intentionally “dumber” than Real Computer Scientist code

El Tomboto, Friday, 12 July 2019 19:39 (five years ago) link

lol dan have you tried a little language called ~applescript~

j., Friday, 12 July 2019 19:47 (five years ago) link

SQL itself is adequate, it’s relational databases that are truly a great invention

president of deluded fruitcakes anonymous (silby), Friday, 12 July 2019 20:22 (five years ago) link

On the other end of the (in)comprehensibility spectrum, I find myself forced to trial-and-error my way through a regex thing (program? query?) today and wow, I fucking hate this. This kind of Perl-like bullshit needs to die forever

Dan I., Friday, 12 July 2019 20:59 (five years ago) link

(I know, it's "powerful" or whatever, but as a human being--*barf*)

Dan I., Friday, 12 July 2019 21:00 (five years ago) link

Oh I see, Perl descended from regex. That makes sense

Dan I., Friday, 12 July 2019 21:02 (five years ago) link

perl is ludicrous but with regex I'm grateful to not have to write 50+ lines of complicated loops just to do a search and replace.

The Pingularity (ledge), Friday, 12 July 2019 21:23 (five years ago) link

I saw the best minds of my generation destroyed by Perl-induced madness.

Vini C. Riley (James Redd and the Blecchs), Friday, 12 July 2019 21:26 (five years ago) link

SQL is fun. But it’s when dealing with massive amounts of data that things get frustrating. Large amounts of data is rarely organized in a way that allows you to write “elegant” SQL, unfortunately.

John Jacob Jingleheimer Schmidt, Friday, 12 July 2019 21:40 (five years ago) link

perl is the most wonderful language i ever learned and you are all monsters

j., Friday, 12 July 2019 21:44 (five years ago) link

xp yeah but it isn't really made for that, I'm a 'write a readable query and parse the data in Java' sorta guy

lately I've had to write a lot of queries involving aggregates and subsets its frustrating because I get into a lot of situations where it's like..."ok I can do this and this and that, but I can't figure out how to do ALL of it together, even though I'm 90% sure there's a way to do it"

frogbs, Friday, 12 July 2019 22:20 (five years ago) link

I fall into the trap of trying to craft a single query to do some complex things that are probably better left as multiple queries, but I also use Rails which makes that kind of data manipulation much easier.

The Worf of Wall Street (Leee), Friday, 12 July 2019 22:32 (five years ago) link

Crafting a single query to do a complex thing is fun as hell to me now, I love doing it. Sometimes I give up and cheat with a temp table :(

president of deluded fruitcakes anonymous (silby), Friday, 12 July 2019 23:13 (five years ago) link

ive a fella from dundaaàwk ahint me at work tackling some new code or something and he has taken to yeowling "och ye know wharray fucking meant ye tick baawstird" at his screen oh maybe ten times an hour

phil neville jacket (darraghmac), Friday, 12 July 2019 23:27 (five years ago) link

SQL rules

brigadier pudding (DJP), Saturday, 13 July 2019 01:01 (five years ago) link

I’ve been playing around a lot in R recently. I like that it’s more of a really powerful calculator than a programming language.

American Fear of Pranksterism (Ed), Saturday, 13 July 2019 01:58 (five years ago) link

Regex'es are painful to work with, no doubt, but there's often not a simpler alternative to accomplish what you can do with them. Actually one thing that I don't like about SQL (despite it's being mostly awesome) is the lack of regexes.

o. nate, Saturday, 13 July 2019 02:18 (five years ago) link

SQL wuz here ‘19

calstars, Saturday, 13 July 2019 02:18 (five years ago) link

I’m a bad person who does SQL irregularly and rather than remember how to do a partition statement the other week, I once again wrote a query in LinqPad and had it generate a query for me

untuned mass damper (mh), Saturday, 13 July 2019 14:12 (five years ago) link

It never ceases to amaze me how much “mission critical” shit is written in toy languages designed to be intentionally “dumber” than Real Computer Scientist code

― El Tomboto, Friday, July 12, 2019 2:39 PM (yesterday) bookmarkflaglink

I’ve known a few people who worked on code for fighter jet stuff and it was all, by regulation, done in Ada. I think it’s less dumb than incredibly explicit and lacking abstractions that would make fuck-ups easier

Apparently the rules have changed and the F-35 has been programmed in C++, which makes sense considering how much of a boondoggle that entire project is

untuned mass damper (mh), Saturday, 13 July 2019 14:17 (five years ago) link

Yeah I heard ADA is used in aeronautics and shit because it’s really really hard to fuck up (there’s a word in programming language concepts for this, extra safe or something )

brimstead, Saturday, 13 July 2019 15:54 (five years ago) link

seeing some dumb fite on Twitter about '10x engineers' with no idea what means

nashwan, Saturday, 13 July 2019 17:15 (five years ago) link

developers' inability to use SQL these days does get a bit infuriating sometimes.

my colleague added a page to the CMS just to add values to a lookup table the other day then deleted the page when he was done, because he can't write an INSERT statement. but he is completely hopeless and hopefully will get fired soon

Colonel Poo, Saturday, 13 July 2019 18:28 (five years ago) link

I'm not sure why SQL doesn't support regex out of the box really. it's completely trivial to add it to SQL Server with a C# CLR function, so why they don't just include it as standard I don't know. I think Postgres might support them?

Colonel Poo, Saturday, 13 July 2019 18:29 (five years ago) link

Postgres has built in regex support yeah

president of deluded fruitcakes anonymous (silby), Saturday, 13 July 2019 18:33 (five years ago) link

& mysql.

The Pingularity (ledge), Saturday, 13 July 2019 18:40 (five years ago) link

and Oracle, I'm pretty sure (I use regexp_like and regexp_replace on a p. much daily basis)

I like SQL but I'm glad my queries are mostly for one-off reports and aren't called regularly or made available for Joe Public to dial up at will because the more interesting ones (and some of the less interesting ones) get really fucking slow

this is partly because the tables don't always join in a sensible manner and useful fields aren't indexed but also I don't know what I'm doing and can't read an "explain plan"

so, I like SQL, but should probably not be allowed to write queries used in the back-end of anything busy

a passing spacecadet, Saturday, 13 July 2019 18:53 (five years ago) link

...I say I "like" SQL, I also swear at it a lot and find it ugly and etc

sometimes I have even been known to miss features from our previous database, a multi-value Pick database which felt like it was straight out of the 70s (though the iteration I was using was apparently out of the, ooh, 80s)

(the 2nd link there is the only reference material I could find anywhere apart from the original 80s manual, which was falling apart, jealously guarded on the boss's desk, and also borderline unreadable - so luckily that site there is actually very good and rescued me from many an impending disaster)

a passing spacecadet, Saturday, 13 July 2019 19:07 (five years ago) link

I was about to say something that I thought was interesting and constructive, but instead read that Wiki and found that OS is named after Dick Pick.

I believe ILX has created a repository for this kind of stuff? Great Real Names ?

John Jacob Jingleheimer Schmidt, Saturday, 13 July 2019 20:30 (five years ago) link

a standard regex query in sql sounds neat

the problem is probably related to a bunch of vendors coming up with extra shitty versions of useful features, fighting over what should be standard

a coworker did a presentation explaining how oracle’s xml querying (which was probably an insanely bad idea anyway) was so fucked they actually tore it out of a newer version and retooled it

generally if you want to do document storage or mongo stuff, just... use a document storage db. relational databases don’t need to include every damn thing and doing so just encourages people to do very bad things

untuned mass damper (mh), Sunday, 14 July 2019 04:46 (five years ago) link

I can see not wanting to include regexes out of the box, since it's possible for an unlucky combo of regex and input string to max out CPU and bring the server to its knees. I think it was a bad regex that brought Cloudflare offline a few weeks ago.

o. nate, Monday, 15 July 2019 01:03 (five years ago) link

yep that was a great postmortem.

president of deluded fruitcakes anonymous (silby), Monday, 15 July 2019 01:13 (five years ago) link

who decided that percentages in en-US should have a space between the number and the percentage sign and can I shake them until their teeth rattle?

brigadier pudding (DJP), Wednesday, 17 July 2019 20:01 (five years ago) link

three months pass...

that thing where it's easier to rewrite the code than it is to debug it.

(somewhere in ~3000 packets the data is getting out of sync but this only manifests as an error in the last packet. just can't nail it down)

((there's a peculiar case where you've got just enough data to go into a fixed-length packet but when you've added the extra 2 bytes to say that this is the last packet you no longer have the space for the all data, so this ends up being the last-but-one packet and you have to add another packet containing a single byte))

fwiw, the second attempt at the code is much neater.

koogs, Thursday, 17 October 2019 12:01 (five years ago) link

as long as you're sure the original code didn't have obscure and undocumented but vital side effects...

The Pingularity (ledge), Thursday, 17 October 2019 15:18 (five years ago) link

it's ALL obscure and undocumented side effects.

(it's not, it's new, non-production code, something i wrote 3 weeks ago and have spent the last two debugging. file in, slightly modified file out. unfortunately the output is fixed-length packets and some of the modifications add / remove one or two bytes from some of the packets, meaning all the rest of the data has to shuffle down and new packets may be created)

koogs, Thursday, 17 October 2019 16:14 (five years ago) link

six months pass...

code review. github tells me 84 files have changed. +769 -451 lines

in those files there are *4* comments, all similar to this (but with different numbers, 1-4)


generateNoof(malUnits), // #1

koogs, Tuesday, 28 April 2020 15:41 (four years ago) link

the "84 files changed" aspect of that is really what scares me the most

silby, Tuesday, 28 April 2020 15:57 (four years ago) link

we recently went on a big code formatting kick and committed basically our entire codebase which sucks because now the 'show annotations/history' feature in RAD points every line to that one revision cuz it replaced all the tabs with spaces

frogbs, Tuesday, 28 April 2020 16:14 (four years ago) link

my last job the codebase had a "tabs-to-spaces" commit that messed up git blames but it's possible to skip over it/reblame starting before that commit in various ways

silby, Tuesday, 28 April 2020 16:17 (four years ago) link

cf git blame --ignore-rev

silby, Tuesday, 28 April 2020 16:17 (four years ago) link

it's a refactor of some classes into smaller classes. so all the test classes need refactoring too. and then some test utility things have been changed to static methods so everything that used them have also changed.

(it might also be that the 84 is for the entire pull request whereas i've only looked at the first commit so far)

and some default formatter keeps dicking wih comments so you end up with stuff like

// very long comment that would be fine all on one line but the formatter
// disagrees

koogs, Tuesday, 28 April 2020 16:19 (four years ago) link

wait, is RAD whatI think it is? If so, condolences

mh, Friday, 1 May 2020 04:00 (four years ago) link

I finish bootcamp in two weeks, gang! :D

The Mandymoorian (Whiney G. Weingarten), Saturday, 2 May 2020 21:04 (four years ago) link

Congrats...was this an online bootcamp? How was it affected by covid?

Which one did you do? Was it a Rails one, or JS, or something else?

cherry blossom, Saturday, 2 May 2020 21:24 (four years ago) link

I did ReactJS!

I went to an actual campus six days a week until the COVID lockdown

The Mandymoorian (Whiney G. Weingarten), Saturday, 2 May 2020 21:34 (four years ago) link

my last job the codebase had a "tabs-to-spaces" commit that messed up git blames but it's possible to skip over it/reblame starting before that commit in various ways

― silby, Tuesday, April 28, 2020 12:17 PM (four days ago) bookmarkflaglink

cf git blame --ignore-rev

― silby, Tuesday, April 28, 2020 12:17 PM (four days ago)


Wait, what? Oh see. This is like when merging with svn you would see the merger in the blame but not the original committer, I guess.

My Chess Hustler (James Redd and the Blecchs), Saturday, 2 May 2020 21:54 (four years ago) link

Cool

My Chess Hustler (James Redd and the Blecchs), Saturday, 2 May 2020 23:30 (four years ago) link

lmao I didn't even realize that was a new feature, I perhaps haven't actually used that yet. idk whatever.

silby, Sunday, 3 May 2020 02:22 (four years ago) link

anyway, condolulations Whiney

silby, Sunday, 3 May 2020 02:23 (four years ago) link

Thanks!

The Mandymoorian (Whiney G. Weingarten), Sunday, 3 May 2020 02:54 (four years ago) link

definitely going to make use of --ignore-rev from now on but it'll be a pain to set that up for every giant squash merge.

squash mergers being fucking savages is the only programming hill i'm willing to die on

diamonddave85​​ (diamonddave85), Sunday, 3 May 2020 16:42 (four years ago) link

sorry whiney but you have to turn in your cool badge at the security desk now, prepare to be bullied, NERD

j., Sunday, 3 May 2020 18:50 (four years ago) link

breh if i'm working on a giant project i'm definitely squash merging my fuckton of commits into 1 for the sake of keeping the master branch clean

RYMsnitch, Sunday, 3 May 2020 19:52 (four years ago) link

smh if you aren’t interactively rebasing your feature branches into a glittering necklace of logical and well-described commits.

silby, Sunday, 3 May 2020 19:59 (four years ago) link

sorry whiney but you have to turn in your cool badge at the security desk now, prepare to be bullied, NERD

― j., Sunday, May 3, 2020 2:50 PM (two hours ago) bookmarkflaglink

going from "geek" to "nerd" will be a difficult transition but not an impossible one

The Mandymoorian (Whiney G. Weingarten), Sunday, 3 May 2020 21:43 (four years ago) link

It's been fun meeting people who have no idea what noise music is!

The Mandymoorian (Whiney G. Weingarten), Sunday, 3 May 2020 21:45 (four years ago) link

silby otm.

Just you wait, Whiney.

My Chess Hustler (James Redd and the Blecchs), Sunday, 3 May 2020 23:06 (four years ago) link

having a true commit history is infinitely more useful than having a clean master branch. also you should be doing what silby said

diamonddave85​​ (diamonddave85), Sunday, 3 May 2020 23:27 (four years ago) link

always said i'd leave ilx after stet adds inline manscaped adds

Morton Koopa Jr. Sings Elvis (Sufjan Grafton), Monday, 4 May 2020 00:56 (four years ago) link

Congratulations whiney!

treeship., Monday, 4 May 2020 02:24 (four years ago) link

I did ReactJS!

Welcome fellow ReactJS dev!

cherry blossom, Monday, 4 May 2020 06:20 (four years ago) link

"I did ReactJS!"

How is the 40 hour course on Udemy, anyone know?

xyzzzz__, Monday, 4 May 2020 14:23 (four years ago) link

Which one is it? Don't pay full price, the courses are often 90% off!

https://wesbos.com/courses is definitely worth a look

cherry blossom, Monday, 4 May 2020 18:32 (four years ago) link

also worth noting is that react has some of the best documentation I've come across -- had to learn enough of it in about two-three weeks for a quick project, and that definitely helped

of course the downside to it is that I can't really say I know it, I just know enough of it to make stuff and google in the gaps

like, I’m eating an elephant head (katherine), Monday, 4 May 2020 19:04 (four years ago) link

That describes nearly all software developers. The rest don’t know how to use google.

silby, Monday, 4 May 2020 19:07 (four years ago) link

i was gonna say tbh

kim rong un (darraghmac), Monday, 4 May 2020 19:08 (four years ago) link

I guess my point was more, it's definitely possible to learn on your own, particularly if you have experience with coding/specifically javascript, but a course formalizes that, if that makes sense

like, I’m eating an elephant head (katherine), Monday, 4 May 2020 19:12 (four years ago) link

My experience is that the formal stuff crops up more often in interviews, although at the same time there are some things that fall into that category but which I've internalized as Just Something You Should Know.

Judd Apatowsaurus (Leee), Monday, 4 May 2020 19:53 (four years ago) link

Which one is it? Don't pay full price, the courses are often 90% off!

https://wesbos.com/courses is definitely worth a look

― cherry blossom, Monday, 4 May 2020 bookmarkflaglink

It's this one:

[Removed Illegal Link]/

I have a free pass. My background is Data not web Development (SAS, SQL), know the project lifecycle etc.

I am currently picking up some Python and like R (doing a course of each for the next 1-2 weeks), but was wondering about a JS course.

xyzzzz__, Monday, 4 May 2020 20:01 (four years ago) link

Let me try that again:

https://www.udemy.com/course/modern-react-bootcamp/

(Only have it for free due to my company's account, not sure how long that will last)

xyzzzz__, Monday, 4 May 2020 20:04 (four years ago) link

I don't know that one but just the other day I was recommended 'The Advanced Web Developer Bootcamp' by the same author

My hot take is that by this point all courses are probably good. The only danger I think with courses is you follow along and build the app and maybe some of it is easy and some of it is hard, you follow along the path and get to the end, and think I kinda got this. Then any slight divergence doing your own thing and you're off the path and in the weeds drowning.

I think there's a lot to be said for the opposite approach, building things from the ground up and googling how to do each step. The reason primarily being each thing sticks a lot more, you don't lose what you've learned. There's definitely a danger with following courses/tutorials alone that it doesn't stick. A combination is best, smaller apps/projects for the second because its tougher than following a course

google in the gaps

This is the best skill to have, especially given the weird things that can come up you would never be able to prepare for!

cherry blossom, Monday, 4 May 2020 20:38 (four years ago) link

Thats more of an all purpose answer, looks like differnt people have different needs/goals!

cherry blossom, Monday, 4 May 2020 20:40 (four years ago) link

Lots of good courses to get a start on the basics but yes googling around the labyrinth of answers when something unexpected comes up and working through problems is almost like the key skill, whatever you code/script in.

xyzzzz__, Monday, 4 May 2020 20:50 (four years ago) link

I just want to say I was very anti-squash right up until the first time I had to rollback something out of the dev branch that hadn't been squashed; now I am all "if you do not squash that shit before merging, I will murder you"

DJP, Monday, 4 May 2020 21:08 (four years ago) link

smh

silby, Monday, 4 May 2020 21:11 (four years ago) link

Right, BEFORE merging, not AT THE MOMENT OF merging.

My Chess Hustler (James Redd and the Blecchs), Monday, 4 May 2020 21:12 (four years ago) link

If you're not committing to the trunk multiple times -- meaning that your changes are in an isolated feature branch that is eventually merged into trunk -- then you can revert all of that stuff by reverting the merge commit.

Squashing, being a manual process, always introduces the possibility of human error.

Judd Apatowsaurus (Leee), Monday, 4 May 2020 21:35 (four years ago) link

but if you squash your commits what will happen to your profanity-laden commit messages that end up here https://twitter.com/gitlost

like, I’m eating an elephant head (katherine), Monday, 4 May 2020 21:42 (four years ago) link

Whats all the squash talk? Can't you just not allow the PR until its been squashed

We mostly PR directly on to master, ideally with few commits but I just reset and then PR with just the one commit (in theory not always in practice)

cherry blossom, Monday, 4 May 2020 21:42 (four years ago) link

Yeah I commit until the cows come home into a feature branch, then squash the feature branch into dev. (I use Bitbucket to do this so there is little chance for human error.)

DJP, Monday, 4 May 2020 23:31 (four years ago) link

the trouble is the ideal number of commits to actually land for review is likely (imo) somewhere in between 1 and n

that said I don't really bother anyone I currently work with about this b/c our practices are bad and I'm still relatively new and don't want to waste my energy telling people to be better if they don't already value it

silby, Monday, 4 May 2020 23:44 (four years ago) link

this is why when you "google in the gaps" on git you get three answers with all of them telling you definitely not to do what the other two say.

is version control hard or is git terrible? ('both' is an acceptable answer.)

a slice of greater pastry (ledge), Tuesday, 5 May 2020 08:08 (four years ago) link

You get better at googling though! Or maybe more accurately you get better at breaking down the bits so you're googling for smaller steps instead of "how do I build a moon"

I feel like git is as easy or as hard as your team makes it. I only really ever run add, commit, pull, push, merge, branch, checkout, and reset

cherry blossom, Tuesday, 5 May 2020 08:20 (four years ago) link

ime it's beloved of people who like to over-complicate everything they do.

our default at work is to squash merge from feature branch into master. that way you don't get all the 'i'm trying this' or 'changed a thing' commits. before github there weren't feature branches...

koogs, Tuesday, 5 May 2020 08:24 (four years ago) link

I am lazy and just use a GUI

like, I’m eating an elephant head (katherine), Tuesday, 5 May 2020 08:31 (four years ago) link

I do my adds and commits from the button inside vscode! the others from terminal

cherry blossom, Tuesday, 5 May 2020 09:39 (four years ago) link

I think it would be cool to work at a shop where people had time to worry about things like squashing commits to make the log look nicer. Our logs look like a tire fire.

o. nate, Tuesday, 5 May 2020 21:33 (four years ago) link

to be fair the only times I use git are for projects that don't remotely care about this, or for my own personal projects

like, I’m eating an elephant head (katherine), Tuesday, 5 May 2020 22:07 (four years ago) link

git is good but has way too many options so takes forever to learn.

My Chess Hustler (James Redd and the Blecchs), Tuesday, 5 May 2020 22:16 (four years ago) link

And then there are current best practices but some people didn't upload their brains so are still stuck on outmoded best practices.

My Chess Hustler (James Redd and the Blecchs), Tuesday, 5 May 2020 22:17 (four years ago) link

goddam I really messed up this whole career thing lol

brimstead, Tuesday, 5 May 2020 22:28 (four years ago) link

crushed some SQL today lads

silby, Tuesday, 5 May 2020 22:37 (four years ago) link

xp -- this isn't career stuff, the only code I've done in the past month is a dumb reverse engineering project

like, I’m eating an elephant head (katherine), Tuesday, 5 May 2020 23:00 (four years ago) link

lol sorry that was just a general scream into the void

brimstead, Tuesday, 5 May 2020 23:09 (four years ago) link

Scream away!

I was scanning over my old posts, and I'm kind of stunned at how far I've come. Granted, that was (yikes) more than 10 years ago, but the industry's changed a load too, especially with the rise of bootcamps. I think those alone would've helped me out back then, and they're probably the best avenue for people thinking of getting into industry as a part of a career change.

Judd Apatowsaurus (Leee), Tuesday, 5 May 2020 23:35 (four years ago) link

I am proud to have leapfrogged from bash scripts into management like the ambitious careerist motherfucker that I was raised to be

El Tomboto, Wednesday, 6 May 2020 03:23 (four years ago) link

Or basically “I realized I sucked at code so I volunteered for everything else I could do until it worked”

El Tomboto, Wednesday, 6 May 2020 03:25 (four years ago) link

volunteering to do things where you've found a strength is seriously underrated and doesn't work in all organizations, but it's a good strategy

mh, Wednesday, 6 May 2020 03:29 (four years ago) link

git is good but has way too many options so takes forever to learn.

I think git is great but to me its very much a secondary thing, I don't want to do anything more than the 8 or 9 commands I use. And if I found I was doing anything more than that I would wonder what had gone wrong that I needed those things.

Although hmmm, having said that github actions might be something worth looking into one day

cherry blossom, Wednesday, 6 May 2020 04:04 (four years ago) link

I’ve done some vile things with git

silby, Wednesday, 6 May 2020 05:07 (four years ago) link

surprisingly, vilegit.com seems unregistered

El Tomboto, Wednesday, 6 May 2020 06:13 (four years ago) link

a foul repository

Morton Koopa Jr. Sings Elvis (Sufjan Grafton), Wednesday, 6 May 2020 17:16 (four years ago) link

I am surprised vilegit.com hasn't been snapped up by VI purists

DJP, Wednesday, 6 May 2020 17:45 (four years ago) link

I am a vim purist but I stopped haranguing people about it 10 years ago

silby, Wednesday, 6 May 2020 17:50 (four years ago) link

Some helpful but less-trafficked git commands that I use:

git ls-files -m

Outputs a nice list of modified files, useful when I want to run a linter on these files which are all over the repo.

git add -p /path/to/file

If I have a bunch of changes in a file but I only want to commit some of them, this command brings up a shell that lets you pick and choose which changes to commit.

Judd Apatowsaurus (Leee), Wednesday, 6 May 2020 18:15 (four years ago) link

My most recent git discovery was -v on git commit (which I’ve now made the default behaviour). It appends the diff (along with the list of staged and unstaged files) in your editor when you edit the commit message. It’s in the commented bit so it doesn’t go in the commit message but it’s useful to refer to, and most useful for catching stuff you shouldn’t be committing.

𝔠𝔞𝔢𝔨 (caek), Wednesday, 6 May 2020 18:48 (four years ago) link

Oh, nice!

My Chess Hustler (James Redd and the Blecchs), Wednesday, 6 May 2020 18:53 (four years ago) link


git add --patch whatever.js

is essential for a hygienic commit log

diamonddave85​​ (diamonddave85), Friday, 8 May 2020 03:31 (four years ago) link

Thanks for the reminder! Any pro tips for using stash?

My Chess Hustler (James Redd and the Blecchs), Friday, 8 May 2020 14:46 (four years ago) link

I always forget stash options so I have to look it up every time:

https://stackoverflow.com/a/10726185
https://stackoverflow.com/questions/3573623/is-it-possible-to-preview-stash-contents-in-git

Judd Apatowsaurus (Leee), Friday, 8 May 2020 15:08 (four years ago) link

Thanks. Have also started using “git stash push” so that I don’t stash everything, just the files that are causing a merge conflict, say.

My Chess Hustler (James Redd and the Blecchs), Friday, 8 May 2020 15:16 (four years ago) link

Wow just found out you can stash hunks as well.

My Chess Hustler (James Redd and the Blecchs), Friday, 8 May 2020 15:17 (four years ago) link

If that's what you're into.

Judd Apatowsaurus (Leee), Friday, 8 May 2020 16:41 (four years ago) link

Lol

My Chess Hustler (James Redd and the Blecchs), Friday, 8 May 2020 16:46 (four years ago) link

And now I have an even dorkier d/n.

git stash hunks (Leee), Friday, 8 May 2020 16:50 (four years ago) link

If only!

I'm learning tmux now!

git stash hunks (Leee), Friday, 8 May 2020 22:12 (four years ago) link

[
git add --patch whatever.js
]

is essential for a hygienic commit log

D
Remembered to use this, thanks.

My Chess Hustler (James Redd and the Blecchs), Monday, 11 May 2020 14:40 (four years ago) link

i visit this page once or twice a month:

https://sethrobertson.github.io/GitFixUm/fixup.html

a slice of greater pastry (ledge), Monday, 11 May 2020 14:44 (four years ago) link

neat

silby, Monday, 11 May 2020 14:45 (four years ago) link

I decided at some point that I hated trying to remember command line options and started using GitExtensions as my Git IDE; I have never looked back.

DJP, Monday, 11 May 2020 15:27 (four years ago) link

Sourcetree is nice on Mac.

not found anything decent on linux yet. and the one i did like (gitg) lost a lot of the things i liked about it from one version to the next (and gets confused by binary files, like 100% cpu confused)

koogs, Monday, 11 May 2020 15:43 (four years ago) link

(svn is generally better for my use case anyway - large document, lots of tiny changes - than git anyway because it stores the diffs and not a complete copy of each like git does*. i had a git directory that was 40x the size of the original document once)

(* git will compress eventually, i'm told, and i'm sure i could force it to happen faster than it does, but svn does it by default)

koogs, Monday, 11 May 2020 15:47 (four years ago) link

We onboarded a new hire recently who came from a bootcamp, and I realized that of our entire engineering team at the local office (we have presences in multiple regions), only our VP and lead security guy and our worst (by far) developer have CS degrees. That leaves a director, a devops lead (who has an EE degree), and two senior engineers (including me).

Gazelle Bundchen (Leee), Friday, 22 May 2020 21:50 (four years ago) link

Actually the other senior eng has an interdisciplinary degree that can definitely fall under the CS heading.

Gazelle Bundchen (Leee), Friday, 22 May 2020 21:56 (four years ago) link

aren't you the one who was trained not to say 'onboarded' though

j., Friday, 22 May 2020 22:02 (four years ago) link

Me? Not that I remember!

Gazelle Bundchen (Leee), Friday, 22 May 2020 22:36 (four years ago) link

well obviously not now, you've been corrupted

j., Friday, 22 May 2020 22:40 (four years ago) link

As long as we're talking jargon, yall have permission to FP me if ever use these:

- solutioning
- grow (i.e. grow a business)

My god I use a lot of these I have become that which I hated: https://www.trustradius.com/buyer-blog/27-most-annoying-business-buzzwords-of-2019-explained

Gazelle Bundchen (Leee), Friday, 22 May 2020 23:23 (four years ago) link

"double click"

𝔠𝔞𝔢𝔨 (caek), Saturday, 23 May 2020 02:53 (four years ago) link

Is the word “wheelhouse” in that list?

Spocks on the Run (James Redd and the Blecchs), Saturday, 23 May 2020 02:54 (four years ago) link

Ha, of course it is

Spocks on the Run (James Redd and the Blecchs), Saturday, 23 May 2020 03:45 (four years ago) link

one month passes...

remote pairing with a TDD pedant is killing me.

he writes a test, i write something that implements it (there's a huge clear spec so i know what needs to be done exactly, this is also not the first of these we've done), the change is literally 7 lines - i set a flag in the constructor, test that flag in a later method and call skip() twice if it's true.

"That commit doesn't really feel like the minimum required to make the test pass. It's jumping ahead too far."

yes, because if you insist on backwards and forwards a line at a time then we'll still be writing this when the 2024 olympics rolls around.

seventeen years in startups before this job. the whole thing would be done in a day and just as solid.

koogs, Friday, 10 July 2020 12:32 (four years ago) link

ffs

all cats are beautiful (silby), Friday, 10 July 2020 15:41 (four years ago) link

you must now reveal the truth -- the commit itself was a test. and you've good news: they passed. make a certificate, print it out, and mail it.

the warm seafood salad that exists (Sufjan Grafton), Friday, 10 July 2020 16:33 (four years ago) link

the certificate should say "Top Asshole" of course

the warm seafood salad that exists (Sufjan Grafton), Friday, 10 July 2020 16:34 (four years ago) link

our JUnit stuff is so ramshackle, it's almost not worth doing it at all. either the tests aren't meaningful or they're designed to break on every change. most of them make no sense at all.

frogbs, Friday, 10 July 2020 16:50 (four years ago) link

I’m not saying it’s impossible to write tests but I can tell you I don’t know how to do it

all cats are beautiful (silby), Friday, 10 July 2020 16:51 (four years ago) link

i like writing tests very early. it speeds certain things up a ton IME. i can see the appeal of writing tests _first_ but i never actually do it myself. but TDD goes beyond that.

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 17:11 (four years ago) link

that said: all js testing frameworks are dogshit, and i miss pytest.

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 17:12 (four years ago) link

Static typing is my god now.

all cats are beautiful (silby), Friday, 10 July 2020 17:13 (four years ago) link

TDD* seems inefficient as a concept at the best of times, constantly overwriting tests and implementations. seems like pussyfooting towards something you could just rattle off.

probably wouldn't be so painful if we were sat together but the remote working aspect means i don't even know whether he's there! or whether i'm waiting for him to get back from lunch / meeting.

(*Test Driven Dev, not Top Down Design. too many acronyms, not enough alphabet)

koogs, Friday, 10 July 2020 17:20 (four years ago) link

> Static typing is my god now.

nasa swear by it. and yet java has just introduced 'var'.

koogs, Friday, 10 July 2020 17:20 (four years ago) link

I'm a big fan of TDD, even though I don't adhere to it strictly (I don't write every test covering every scenario off the bat). I guess overtesting is technically possible, but I don't see how high coverage can be a bad thing? Like if what you're testing is trivial, then the test should also be trivial.

AxoLOLtl (Leee), Friday, 10 July 2020 17:48 (four years ago) link

coverage is orthogonal to TDD

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 17:49 (four years ago) link

"That commit doesn't really feel like the minimum required to make the test pass. It's jumping ahead too far."

^^^ TDD

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 17:50 (four years ago) link

What? That sounds antithetical to my understanding of TDD.

AxoLOLtl (Leee), Friday, 10 July 2020 18:04 (four years ago) link

TDD as I understand it:

- write tests before you write code
- write only enough tests to prove the code works for your use case's defintion of "works"
- stop writing code immediately when these tests pass

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 18:09 (four years ago) link

I agree with point 1 (though the practice and theory can be pretty distant IME), point 2 seems nebulous, but point 3 seems like an uncharitable interpretation.

AxoLOLtl (Leee), Friday, 10 July 2020 18:15 (four years ago) link

since we do mostly services, our version of test-driven is we do OpenApi (swagger, whatever) definitions of the API, someone writes tests against that spec (call a url, validate the returned data is in the expected format and schema, no errors returned) and someone else can code the service at the same time

so you can set up static endpoints with both good/bad data to make sure your tests work properly and then when the actual service is ready you just point it over there and run

solo scampito (mh), Friday, 10 July 2020 18:16 (four years ago) link

integration tests are only good for spotting erroneous changes and regressions imo, good for big infrastructural open source projects

testing code with artificial things is a pain in the ass

solo scampito (mh), Friday, 10 July 2020 18:16 (four years ago) link

The thing that makes me crazy about writing tests is I understand kind of how to write tests for pure functions on data but that’s only about 5% of any actual application, the other 95% is doing bookkeeping with resources like databases and external services and god knows what, setting up mock everything just to test that stuff feels tautological and maddening. I just can’t.

all cats are beautiful (silby), Friday, 10 July 2020 18:19 (four years ago) link

I agree with point 1 (though the practice and theory can be pretty distant IME), point 2 seems nebulous, but point 3 seems like an uncharitable interpretation.

― AxoLOLtl (Leee), Friday, July 10, 2020 2:15 PM (two minutes ago) bookmarkflaglink

i don't understand if you're agreeing/disagreeing with these practicies, or with the claim that they describe TDD.

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 18:20 (four years ago) link

Point 1 is an accurate description of TDD, though my adherence to it is not complete.
Point 3 does not accurately describe TDD, IMO. In my practice, I'll write the easy tests first, then as edge cases crop up, add appropriate tests (though I probably add it to the code before I add these scenarios to the test suite).

AxoLOLtl (Leee), Friday, 10 July 2020 18:29 (four years ago) link

well sure point 3 elides the fact that it's supposed to be a loop in which you get the tests to pass, then add more tests, then get the new tests to pass by writing more code, add more tests, etc.

but the point (and the definition of TDD AFAICT) is that you're supposed to stop writing code on this iteration as soon as the tests pass. you may opt to refactor (and you have tests so that should be easy). but you're done implementing new *features* or *behaviours* until you write more tests.

that's part of the *definition* of TDD AFAICT (based on the wikipedia page haha), and it's certainly consistent with the practice of TDD according to koogs' pairing partner: "That commit doesn't really feel like the minimum required to make the test pass. It's jumping ahead too far."

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 18:38 (four years ago) link

an example of one of his implementations.

method takes a structure containing a value and two flags. if either flag is true return the value.

so the tests were something like


structure.value = 2
retval = test(structure, true, false)
assertEquals(2, retval)

structure.value = 3
retval = test(structure, false, true)
assertEquals(3, retval)

and his implementation was


if flag1 return 2
if flag2 return 3

which just seems perverse when you could've written


if [flag1 || flag2] return structure.value

and be done with it.

koogs, Friday, 10 July 2020 18:41 (four years ago) link

or is that "jumping ahead too far"?

koogs, Friday, 10 July 2020 18:44 (four years ago) link

it's not always insane to overtest simple code because:

1. tests are incredibly valuable if/when you refactor/add features later
2. the easiest time to write tests is when the implementation is on your mental stack, not months later, and definitely not if someone else did the implementation.

*that* is insane though.

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 18:46 (four years ago) link

It’s definitely perverse to write a wrong implementation just because it passes your first stab on a test

Actually I think I’m going to throw up

all cats are beautiful (silby), Friday, 10 July 2020 18:52 (four years ago) link

Like does this guy ever want to get anything done in his life

all cats are beautiful (silby), Friday, 10 July 2020 18:53 (four years ago) link

If this is the kind of mind that TDD produces then TDD is bad for your mind

all cats are beautiful (silby), Friday, 10 July 2020 18:54 (four years ago) link

these two chapters of dive into python (nominally about unit testing but not really) actually make me like TDD

https://diveinto.org/python3/unit-testing.html
https://diveinto.org/python3/refactoring.html

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 18:57 (four years ago) link

In koogs's example, I think that the way to DRY it up would be to write a method like

has_flag
that would be defined as

flag1 || flag2

Then in the calling function stub/mock has_flag.

Agreed on both caek's latest two points, and point 2 is particularly why I advocate a TDD (or TDD-lite?) approach.

As to the "dictionary" definition of TDD, that's why I never call myself a strict follower; I do feel that using testing as a framework for development is incredibly valuable, especially with setup and tear-down, and as a prompt for writing modular code.

AxoLOLtl (Leee), Friday, 10 July 2020 18:58 (four years ago) link

(oh, irl the flags weren't parameters, they were flags in another structure and this second structure was mocked and passed in


test1
when(mockObj.getflag1()).doreturn(true)
retval = test(structure, mockObj)
...
test2
when(mockObj.getflag2()).doreturn(true)
retval = test(structure, mockObj)

so not possible to combine them, sorry

in fact i cheated by checking in two failing tests at the same time, which is apparently verboten, just to try and cut down the number of iterations
)

koogs, Friday, 10 July 2020 19:08 (four years ago) link

the other 95% is doing bookkeeping with resources like databases and external services and god knows what, setting up mock everything just to test that stuff feels tautological and maddening. I just can’t

+ ui interaction, and otm.

neith moon (ledge), Friday, 10 July 2020 19:59 (four years ago) link

i mean i've tried (not v hard) and failed (for various reasons, that being one) to get tdd or any kind of testing culture implemented at our company. and I'm ok with that.

neith moon (ledge), Friday, 10 July 2020 20:04 (four years ago) link

tdd seems a reach for a company that does not have a testing culture

𝔠𝔞𝔢𝔨 (caek), Friday, 10 July 2020 20:09 (four years ago) link

i'm jealous of all of you

Two Meter Peter (Ste), Friday, 10 July 2020 20:19 (four years ago) link

xp yeah true, baby steps, but i can't even see how to do those as it doesn't seem worth testing the small bits of fuctionality that haven't got db or ui interaction all over them.

neith moon (ledge), Friday, 10 July 2020 20:19 (four years ago) link

i don't have any major issue with TDD as a philosophy, but pairing with a TDD pedant like koogs described sounds like my own personal hell

the portentous pepper (govern yourself accordingly), Saturday, 11 July 2020 11:31 (four years ago) link

i'm not arguing against testing in any sense, but projecting your own orthodoxy onto a pairing partner kinda defeats the purpose of pairing imo!

the portentous pepper (govern yourself accordingly), Saturday, 11 July 2020 11:36 (four years ago) link

Absolute psycho replies to this one

my favorite reason to write software is money

— Abby Fuller (@abbyfuller) July 10, 2020

𝔠𝔞𝔢𝔨 (caek), Saturday, 11 July 2020 21:10 (four years ago) link

Ugh, I’ll take your word for it. She’s right of course.

all cats are beautiful (silby), Saturday, 11 July 2020 21:10 (four years ago) link

galaxy brain:

and this should be the only reason. money is the best way to transform ideas to value and benefit all in the end. other reasons like freedom, morale or noble purpose can't last long enough and may lead to the opposite.

— Andrew Zhu (@xhinker) July 11, 2020

neith moon (ledge), Sunday, 12 July 2020 06:57 (four years ago) link

Wow

all cats are beautiful (silby), Sunday, 12 July 2020 07:10 (four years ago) link

God, fuck programmers

all cats are beautiful (silby), Sunday, 12 July 2020 07:11 (four years ago) link

We’re not all bad.

Mr. Snrub, Sunday, 12 July 2020 13:17 (four years ago) link

All bad including me

all cats are beautiful (silby), Sunday, 12 July 2020 13:42 (four years ago) link

Every line of code is a brick in the edifice of fascism, or something.

all cats are beautiful (silby), Sunday, 12 July 2020 13:43 (four years ago) link

The best code is no code at all

Lipstick O.G. (James Redd and the Blecchs), Sunday, 12 July 2020 13:46 (four years ago) link

Bob Marley

Lipstick O.G. (James Redd and the Blecchs), Sunday, 12 July 2020 13:47 (four years ago) link

Or Vonnegut

Lipstick O.G. (James Redd and the Blecchs), Sunday, 12 July 2020 13:48 (four years ago) link

Giving a talk on that exact thesis in a couple weeks

all cats are beautiful (silby), Sunday, 12 July 2020 13:52 (four years ago) link

gotta love unit tests with inputs such as


new byte[] { 0x27, 00, 00, 00, (byte) 0xFF, (byte) 0b11_0_1_0_0_1_0 }

koogs, Sunday, 12 July 2020 16:06 (four years ago) link

(this actually my forte, have been extracting bits from bytes since i had a zx81)

koogs, Sunday, 12 July 2020 16:08 (four years ago) link

DEAD BEEF BAD FOOD

Lipstick O.G. (James Redd and the Blecchs), Sunday, 12 July 2020 16:49 (four years ago) link

I've got a great poke for Jet Set Willy.

Being cheap is expensive (snoball), Sunday, 12 July 2020 17:03 (four years ago) link

Lol

Isolde mein Herz zum Junker (James Redd and the Blecchs), Tuesday, 14 July 2020 17:36 (four years ago) link

Don’t know if it’s a religion thing but why do some people hate to do a git rebase and then do a fast-forward merge.

Isolde mein Herz zum Junker (James Redd and the Blecchs), Tuesday, 14 July 2020 17:38 (four years ago) link

we banned merge commits on our project because of one guy

𝔠𝔞𝔢𝔨 (caek), Tuesday, 14 July 2020 17:39 (four years ago) link

Not surprised. Did the graph look like the one shone here in The Problem? https://mtyurt.net/post/git-using-advanced-rebase-features-for-a-clean-repository.html

Isolde mein Herz zum Junker (James Redd and the Blecchs), Tuesday, 14 July 2020 18:36 (four years ago) link

Can you lock out all merges? We have fast-forward-only some branches but then I recently noticed that some of the more unenlightened just merge that branch into theirs and then they can fast-forward this merged melange back.

Isolde mein Herz zum Junker (James Redd and the Blecchs), Tuesday, 14 July 2020 18:38 (four years ago) link

I missed out on the TDD conversation but I wanted to mention that my one experience pairing with a TDD disciple involved watching her create a bunch of tests that were logically incorrect, getting them to pass, and missing giant pieces of logic that interconnected subsystems of the module we were working on and actively mocking other pieces of functionality we were supposed to be testing, so technically we wrote passing code according to the tests but, because the tests weren't actually right, the whole thing was super buggy and caused a bunch of later rework.

I know this isn't the fault of TDD per se but it did play into a lot of my preconceived notions against it.

Re: merge commits, I don't see why anyone should care what I do on my feature branch as long as I squash-merge into the main branch.

shout-out to his family (DJP), Tuesday, 14 July 2020 18:49 (four years ago) link

Yeah we don’t care what you do on feature branches but main (nee master) is ff only enforced via our code review thing (gerrit). What this means in practice is you hit “merge” and gerrit rebased your change into the tip of main then merged by ff. if there’s a conflict you have to resolve it and resubmit the review. We used to let people do that without running the tests but the number of people who committed the string “>>>>>>>>>” was getting out of hand so it has to at least build after a manually resolved merge conflict.

𝔠𝔞𝔢𝔨 (caek), Tuesday, 14 July 2020 18:55 (four years ago) link

Doowatchyalike, just don't create a twelve-lane merge superhighway and then (DEAD) BEEF when your merges ultimately break down.

Isolde mein Herz zum Junker (James Redd and the Blecchs), Wednesday, 15 July 2020 13:55 (four years ago) link

Thanks.

Also, I misspelled Doowutchyalike.

Isolde mein Herz zum Junker (James Redd and the Blecchs), Wednesday, 15 July 2020 17:49 (four years ago) link

It's pulled, and it's fine, but there's clearly a balance between "octopus merges are fine" and "Christ, that's not an octopus, that's a Cthulhu merge".

brimstead, Wednesday, 15 July 2020 18:20 (four years ago) link

I would just like to take a moment to say javascript sucks and lodash sucks and _.times REALLY sucks

Why does every fucking thing have to be a function, how about you () => juggle(myBalls)

shout-out to his family (DJP), Wednesday, 15 July 2020 18:48 (four years ago) link

Not only does it all have to be a function but there’s a strong convention that functions be anonymous whenever possible because fuck the reader, right?

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 July 2020 19:10 (four years ago) link

Isn’t most of lodash in es whatever these days though?

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 July 2020 19:11 (four years ago) link

our linting rules haven't been updated yet to favor the native implementations, why because fuck everything and everyone

shout-out to his family (DJP), Wednesday, 15 July 2020 19:12 (four years ago) link

imo this is what happens when you let Perl aficionados design everything

shout-out to his family (DJP), Wednesday, 15 July 2020 19:13 (four years ago) link

Don't worry, Dan, it will be updated just as soon as Perl6 is production.

Isolde mein Herz zum Junker (James Redd and the Blecchs), Wednesday, 15 July 2020 19:23 (four years ago) link

Why does every fucking thing have to be a function, how about you () => juggle(myBalls)

juggle(this.nuts)

cherry blossom, Wednesday, 15 July 2020 19:26 (four years ago) link

everything being a function is good not bad tbh

all cats are beautiful (silby), Wednesday, 15 July 2020 21:17 (four years ago) link

fuck state, keep it in a box

all cats are beautiful (silby), Wednesday, 15 July 2020 21:17 (four years ago) link

counterpoint: nah

shout-out to his family (DJP), Wednesday, 15 July 2020 23:20 (four years ago) link

Mutable state is a turd on the polished marble floor of my exquisite grand hall hung with crystal chandeliers

all cats are beautiful (silby), Wednesday, 15 July 2020 23:27 (four years ago) link

Classic or dud: late night email from colleague cc-ing management saying he can’t figure out something you gave him a few weeks ago and it is crashing and you need to put in more error checking etc. ( because his time and productivity etc)

Isolde mein Herz zum Junker (James Redd and the Blecchs), Thursday, 16 July 2020 18:40 (four years ago) link

Well this has been sorted for now.

Left Eye Frizzell (James Redd and the Blecchs), Sunday, 19 July 2020 13:17 (four years ago) link


# get password via terminal without echoing
password = STDIN.noecho(&:gets).chomp

reasonable, right? sentence in english explaining the cryptic command that follows. i don't get the "document WHY not WHAT" review comments i always get.

coming new to this code, debugging it later say, such things let you understand which part does what without having to decode the code. = useful, especially if you're in a mixed ability team.

also, review comments from people you haven't asked for reviews, classic or dud?

koogs, Tuesday, 21 July 2020 13:09 (four years ago) link

Leaning towards dud.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 13:15 (four years ago) link

Codesplainers gonna codesplain.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 13:17 (four years ago) link

If people would just put in fucking comments saying what they were trying to do and what their expectations were, basically defining the contract they're trying to fulfill, it would be about 8 billion times easier to identify logic mistakes than it currently is.

shout-out to his family (DJP), Tuesday, 21 July 2020 13:31 (four years ago) link

https://www.hillelwayne.com/post/what-comments/

𝔠𝔞𝔢𝔨 (caek), Tuesday, 21 July 2020 13:40 (four years ago) link

i have an issue with that

> //f.ex $F1a3

f.ex? for example? what's wrong with 'ie' or 'eg'?

koogs, Tuesday, 21 July 2020 13:56 (four years ago) link

(my whole script only exists because someone checked in an aws kms encrypted key without explaining how it was generated, and 3 years later we needed another - lack of documentation again)

koogs, Tuesday, 21 July 2020 13:58 (four years ago) link

I can see where the anti comment review on that is coming from. The comment duplicates stuff that’s in the docs, right? It’s not a “trick” that depends on undocumented behaviour (like the fact that piping to xargs is a way to trim leading and trailing white space?! Did you all know this?!). It’s just something that’s not obvious from reading the code. That’s not where I draw the line and your point about mixed ability teams is a good one, but it’s not a terrible place to draw it.

𝔠𝔞𝔢𝔨 (caek), Tuesday, 21 July 2020 14:04 (four years ago) link

Whoa, xargs trick is neat!

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:10 (four years ago) link

I am old. I still use xargs -i and never switched to -I

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:13 (four years ago) link

Also can never remember that xargs idiom using the shell trick.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:18 (four years ago) link

Ah, xargs -0 will keep the whitespace

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:22 (four years ago) link

Feel like comments should be judged on their practical effects rather than from some philosophical position. If it takes 2 minutes to figure out a chunk of code without comments and 10 seconds to figure out the code with comments, I don't care how "obvious" or "self documenting" the code itself is, the comments are good.

Dan I., Tuesday, 21 July 2020 14:25 (four years ago) link

otm

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:28 (four years ago) link

I say this as person who long ago took a course - in Pascal! - nicknamed "Commenting For Credit" in which people were expected to do things like

  i := I + 1; //increment I 

So in general I prefer self-documenting but yeah

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:32 (four years ago) link

(input wants to uppercase every i)

 i := i + 1; //increment i again

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:33 (four years ago) link

Next topic: git commit messages.

//increment topic

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 14:36 (four years ago) link

ruby doesn't let you i++. spent a chunk of sunday looking at cryptic error message and not seeing the problem.

koogs, Tuesday, 21 July 2020 14:44 (four years ago) link

Feel like comments should be judged on their practical effects rather than from some philosophical position. If it takes 2 minutes to figure out a chunk of code without comments and 10 seconds to figure out the code with comments, I don't care how "obvious" or "self documenting" the code itself is, the comments are good.

Can we attach this to everyone's monitor?

shout-out to his family (DJP), Tuesday, 21 July 2020 14:58 (four years ago) link

I think I only write comments that are at least 100 words long

all cats are beautiful (silby), Tuesday, 21 July 2020 15:08 (four years ago) link

I'm the only one reading my code/commenting so too many of my comments are targeted at my osteoporosis of a memory, e.g.,

// The + 16 offset is event type, commenting so I don't forget it yet again
// The + 16 offset is still event type, it appears I forgot it again

like, I’m eating an elephant head (katherine), Tuesday, 21 July 2020 15:32 (four years ago) link

(4000 lines apart, to be fair, and not my code but decompiler output)

like, I’m eating an elephant head (katherine), Tuesday, 21 July 2020 15:33 (four years ago) link


public static final int EVENT_TYPE_OFFSET = 16;

koogs, Tuesday, 21 July 2020 15:35 (four years ago) link

trust me that's not feasible in this thing, it's certainly possible but this is 240K lines of code and I can't just ctrl-f

like, I’m eating an elephant head (katherine), Tuesday, 21 July 2020 15:53 (four years ago) link

Btw, my posts from a few weeks ago was about colleagues who are part of the development process and are participating in alpha testing but seem to want to behave as if they are end users and are shocked - shocked! - when something breaks. Perhaps this is a touchy subject.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:21 (four years ago) link

Because no one wants to be that guy that breaks things.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:28 (four years ago) link

But only the other hand there is the short-term/local/pre-mature optimization of being fast on the send button with "It broke! Nothing should ever break!"

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:30 (four years ago) link

"Strike mine eyes from my face!"

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:31 (four years ago) link

"I have reported thy breaking to mine Lord of Unbreakability. My day's work is done, now I shall take leave and rest for the nonce."

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:34 (four years ago) link

But only the other hand there is the short-term/local/pre-mature optimization of being fast on the send button with "It broke! Nothing should ever break!"

this is me :(

𝔠𝔞𝔢𝔨 (caek), Tuesday, 21 July 2020 16:36 (four years ago) link

Knew it!

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 16:39 (four years ago) link

caek’s link is otm

I am in favor of breaking down functions to component parts when they’re overly long or complex. This is a necessity in code of any length, especially when it makes scope of variables clear and you’re doing a specific manipulation of data that is secondary to the purpose of what you’re writing. You don’t need inline parsing of object A into object B if what you’re actually doing is some sort of calculation.

The primary use of functions is to encapsulate code that could be reused somewhere else. If you can add a few comments and make it clear what you’re doing in the primary function, and you’re not reusing anything, just add comments.

Same for code paths that are going to end up calling all functions — why are all of them separate functions if you call every one of them 90% of the time? You’re just replacing comments with function names, and outside of the context of reading *all* of that code, I have no idea what replaceAllInstances does. Instances of.. the one argument to the function? It’s method signature as comment

solo scampito (mh), Tuesday, 21 July 2020 18:27 (four years ago) link

Well said.

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 18:37 (four years ago) link

Kevlin Henney to thread

Left Eye Frizzell (James Redd and the Blecchs), Tuesday, 21 July 2020 18:48 (four years ago) link

World’s Finest Commit Message:

Merge remote-tracking branch 'origin/master'

Time Will Show Leo Weiser (James Redd and the Blecchs), Tuesday, 28 July 2020 14:50 (four years ago) link

smh

all cats are beautiful (silby), Tuesday, 28 July 2020 15:31 (four years ago) link

SMH CARD

Time Will Show Leo Weiser (James Redd and the Blecchs), Tuesday, 28 July 2020 15:41 (four years ago) link

speaking of commit messages

https://www.twitter.com/gitlost

like, I’m eating an elephant head (katherine), Tuesday, 28 July 2020 19:06 (four years ago) link

lol

shout-out to his family (DJP), Tuesday, 28 July 2020 19:08 (four years ago) link

always happy to see that account again

all cats are beautiful (silby), Tuesday, 28 July 2020 20:08 (four years ago) link

this component test, two of the 'expected' fields are actually a comma separated list of additional tests and a parallel comma-separated list of the expected values for these tests.

koogs, Friday, 31 July 2020 12:34 (four years ago) link

three weeks pass...

Defensive Programming: C/D

Isinglass Ponys (James Redd and the Blecchs), Monday, 24 August 2020 15:36 (four years ago) link

Depends what it is… but I’d rather have good tests which catch any failures in most cases I would say.

Chewshabadoo, Monday, 24 August 2020 16:26 (four years ago) link

iirc Go tries to push defensive programming as a default

iirc the main point of defensive programming is handle all the error conditions *first* then the code does what it’s supposed to

it’s smart imo, because happy path programming is terrible

solo scampito (mh), Monday, 24 August 2020 17:32 (four years ago) link

worst mess up we've had here recently, one that made the papers, was component C relying on previous component B for validation only to then add component A as an input path and component A didn't bother.

koogs, Monday, 24 August 2020 18:51 (four years ago) link

in short: trustno1

koogs, Monday, 24 August 2020 18:57 (four years ago) link

Innocuous irrational anger: typos in method/var names that don't get fix and propagate throughout the system wherever the thing is called - check_intant_update_user_permission

neith moon (ledge), Tuesday, 25 August 2020 10:31 (four years ago) link

intant_update_user_permission = False
...
return intant_update_user_permission

how can you even c+p all that without noticing?

neith moon (ledge), Tuesday, 25 August 2020 10:33 (four years ago) link

intant_karma.Said(“Knock You Out”)

Isinglass Ponys (James Redd and the Blecchs), Tuesday, 25 August 2020 10:57 (four years ago) link

hey my display name is relevant

assert (MatthewK), Tuesday, 25 August 2020 11:14 (four years ago) link

> don't get fix

you never fix

koogs, Tuesday, 25 August 2020 11:38 (four years ago) link

who is screaming FIX at my code. i will never fix.

neith moon (ledge), Tuesday, 25 August 2020 12:45 (four years ago) link

OMG we have a column in our DB called loyality_discount.

Ruth Bae Ginsburg (Leee), Tuesday, 25 August 2020 16:33 (four years ago) link

that’s right

solo scampito (mh), Tuesday, 25 August 2020 16:42 (four years ago) link

I think about this Reddit thread a lot pic.twitter.com/w2QxYJ2kx6

— Sy Brand (@TartanLlama) August 20, 2020

koogs, Thursday, 27 August 2020 11:03 (four years ago) link

when that thread was making the rounds I did a lot of mumbling “oh no”

solo scampito (mh), Thursday, 27 August 2020 13:23 (four years ago) link

i've only seen that one comment but a) wow at the inventiveness of people and b) fuck the inventiveness of people

you can use unicode letters (not punctuation) in java for variable names and i can see delta being useful for all the animations i write but fuck learning how to type it.

also, i think java 9 stopped the use of a single _ as a variable name, but two or more is fine.

koogs, Thursday, 27 August 2020 13:41 (four years ago) link

two months pass...

the comments thing has come to a head again after they refused to approve a pull request because of comments and *whitespace* in a component test! apparently the blank lines made him think it was a new Scenario even given the indentation.

so now we have a team meeting about it, but it'll be the usual steam-rollering, the alpha programmer forcing his views on everybody by dint of talking the most.

koogs, Tuesday, 10 November 2020 12:58 (three years ago) link

*sigh*

An Andalusian Do-rag (James Redd and the Blecchs), Tuesday, 10 November 2020 13:56 (three years ago) link

hopefully sanity prevailed. at least pretty much everybody thought that not approving changes because of comments was unreasonable.

koogs, Tuesday, 10 November 2020 15:16 (three years ago) link

That's a good sign!

DJP, Tuesday, 10 November 2020 15:18 (three years ago) link

I hope I never again have to work anywhere that doesn’t have strict autoformatting procedures in place.

Chewshabadoo, Tuesday, 10 November 2020 15:54 (three years ago) link

even though i have very strong formatting preferences, i've found the best way to deal with the issue is to use an opinionated, non-configurable formatter as part of the build process. that way, everyone dislikes the formatting equally

diamonddave85​​ (diamonddave85), Tuesday, 10 November 2020 17:19 (three years ago) link

We have flake8 for our Python stuff but not black, autoformatting would make me cwazy

The Bosom Manor Michaelmas Special (silby), Tuesday, 10 November 2020 17:25 (three years ago) link

my preferences > autoformatters > everyone else's preferences

𝔠𝔞𝔢𝔨 (caek), Tuesday, 10 November 2020 17:25 (three years ago) link

i absolutely loathe black, but it's still better than the alternative on a shared repo, so i've learned to live with it.

𝔠𝔞𝔢𝔨 (caek), Tuesday, 10 November 2020 17:26 (three years ago) link

is there a thread for just like general CS news and stuff? this seems pretty cool:

https://www.quantamagazine.org/computer-scientists-achieve-crown-jewel-of-cryptography-20201110/

brimstead, Tuesday, 10 November 2020 19:41 (three years ago) link

my preferences > autoformatters > everyone else's preferences

^truth bomb

An Andalusian Do-rag (James Redd and the Blecchs), Tuesday, 10 November 2020 20:51 (three years ago) link

cool link, brimstead!

DJI, Tuesday, 10 November 2020 21:08 (three years ago) link

Haha, yep, in our front-end JavaScript codebase Prettier is a godsend for being almost totally unconfigurable.

Chewshabadoo, Wednesday, 11 November 2020 11:53 (three years ago) link

four months pass...

generate 84 files
commit to github
upload to server

repeat 40 times, changing one word each time.

(i have replaced step one with a sed script rather than manually editing the files but still...)

koogs, Thursday, 11 March 2021 20:22 (three years ago) link

Why is programming language documentation so terrible? I mean, look at this shit:

https://www.cplusplus.com/reference/functional/function/

std::function

Class that can wrap any kind of callable element (such as functions and function objects) into a copyable object, and whose type depends solely on its call signature (and not on the callable element type itself). An object of a function class instantiation can wrap any of the following kinds of callable objects: a function, a function pointer, a pointer to member, or any kind of function object (i.e., an object whose class defines operator(), including closures). A decay copy of the wrapped callable object is stored internally by the object, which becomes the function's target. The specific type of this target callable object is not needed in order to instantiate the function wrapper class; only its call signature. The function object can be copied and moved around, and can be used to directly invoke the callable object with the specified call signature (see member operator()). function objects can also be in a state with no target callable object. In this case they are known as empty functions, and calling them throws a bad_function_call exception.

Not only is this incredibly complex for the novice reader to understand, but you will notice at no point in the entire article does it mention why you would ever want to use this or what problem does it solve.

Mr. Snrub, Sunday, 21 March 2021 21:49 (three years ago) link

I’m not going to defend that as a model of clear technical writing but that’s an api reference not a tutorial document.

𝔠𝔞𝔢𝔨 (caek), Sunday, 21 March 2021 21:56 (three years ago) link

not that this is in any way more clear, but cppreference.com is the site you want for non-spammy c++ documentation: https://en.cppreference.com/w/cpp/utility/functional/function

diamonddave85​​ (diamonddave85), Sunday, 21 March 2021 23:03 (three years ago) link

I do like the “Run this code” functionality so you can try it out yourself.

Mr. Snrub, Sunday, 21 March 2021 23:35 (three years ago) link

Novices should probably not be learning C++

o. nate, Sunday, 21 March 2021 23:40 (three years ago) link

I think c++ is probably not the reference point for this moment in programming education but as caek said, it’s the reference guide and not a learning one

pretty sure there are a few learning documents, books, guides, etc for this language but who can be sure

mh, Monday, 22 March 2021 04:29 (three years ago) link

I do appreciate the literal nature of “I want to do c++” and literally going to cplusplus.com though

mh, Monday, 22 March 2021 04:30 (three years ago) link

i definitely sympathize. man pages and documentation have always been written for those who already have a general understanding of programming terminology and fundamentals.

that aside, just from a writing point of view, documentation has also always been kind of terrible, but that's because it's difficult to draw the line when you need to explain all the concepts referenced. it's easier to pass this job over to the reader, so the reader/learner ends up having to google all the parts of the explanation that don't make sense in order to fill in the knowledge gaps.

having said that, i will say it actually does get easier, thankfully.

the c programming language book is still a pretty terrible book to use in an intro to c course (one of my first introductions to programming, regrettably so)

Punster McPunisher, Monday, 22 March 2021 05:21 (three years ago) link

the best documentation i've seen recently (like in the past year or two) is microsoft's typescript stuff https://www.typescriptlang.org/docs/ (i guess it's easy when you have a large FT staff writing docs), but honorable mention to https://fastapi.tiangolo.com/ which went off on tangents explaining background topics exactly when i personally had gaps in my knowledge (others may find it too discursive).

𝔠𝔞𝔢𝔨 (caek), Monday, 22 March 2021 06:08 (three years ago) link

typescript is doing js a lot of good, imo

Punster McPunisher, Monday, 22 March 2021 21:27 (three years ago) link

I recently realized that whenever I’m learning to use a language, software, or package and the docs or tutorials say “use <feature X> with care”, what they really mean is “never under any circumstances use this feature. It stinks.”

Dan I., Sunday, 4 April 2021 08:33 (three years ago) link

or “when you run into the edge case that really only works with <feature X> you’re not going to have a lot of fun”

mh, Monday, 5 April 2021 14:16 (three years ago) link

Classic or dud, people who check for all kinds of edge cases except for the one that actually arises in practice

It Is Dangerous to Meme Inside (James Redd and the Blecchs), Tuesday, 6 April 2021 17:11 (three years ago) link

breaking stuff is fun

brimstead, Tuesday, 6 April 2021 18:51 (three years ago) link

the c programming language book is still a pretty terrible book to use in an intro to c course (one of my first introductions to programming, regrettably so)

I read that book and afterwards felt that I understood C, but had no idea how to program anything in it.

Being cheap is expensive (snoball), Tuesday, 6 April 2021 19:22 (three years ago) link

two weeks pass...

what's the point in an expensive ticketing system if you're just going to ask poeple to do stuff or review stuff or give the nod for stuff on a slack channel? or, even worse, in zoom comments window (which disappears when the call ends)

also, json, all very well but if you're using it for config and one entry is a list of ip addresses with no context, that's not great. at least with xml you can add comments.

koogs, Wednesday, 21 April 2021 12:37 (three years ago) link

I’ve failed to do the jerk thing lately and respond to any request with a link to the relevant ticketing/help desk site

it’s a good habit but unnnngh sometimes it’s easy to just do the thing

mh, Wednesday, 21 April 2021 14:12 (three years ago) link

arguably shouldn't the associated property name give you context for what those IP addresses are?

80's hair metal , and good praise music ! (DJP), Wednesday, 21 April 2021 14:14 (three years ago) link

JSON for human-readable config files is bad and hated

Canon in Deez (silby), Wednesday, 21 April 2021 14:23 (three years ago) link

I pasted two (2) direct emails this week into new tickets for people. Unfortunately I then immediately worked on one of them, like an idiot.

Canon in Deez (silby), Wednesday, 21 April 2021 14:24 (three years ago) link

> arguably shouldn't the associated property name give you context for what those IP addresses are?

ipwhitelist01, ipwhitelist02...

koogs, Wednesday, 21 April 2021 16:00 (three years ago) link

okay lol, I give up

80's hair metal , and good praise music ! (DJP), Wednesday, 21 April 2021 16:01 (three years ago) link

i complained about exactly that, and wrote the 5 lines of code that used a list of suffixes rather than a counter for the property names. but no...

koogs, Wednesday, 21 April 2021 16:02 (three years ago) link

https://nigeltao.github.io/blog/2021/json-with-commas-comments.html is good

𝔠𝔞𝔢𝔨 (caek), Wednesday, 21 April 2021 19:54 (three years ago) link

three weeks pass...

what's the point of writing tickets if they contain 1 useful bit of information, and 5 bits of misinformation?

channel_05 to 08 is actually channel_01 to 04

"pTO value should be adjusted appropriately." yeah, thanks for that.

the example file i'm to base everything on is for some test system that bears no relation to the target (actually, either of the two different targets, which is a pain in itself)

oh, and it needs doing for the end of the week.

koogs, Thursday, 13 May 2021 16:56 (three years ago) link

is that a knock on qa?

i had an uncomfortable interaction once with someone because they thought that if you "keep it simple, it will be simple"

i told them i had one simple request for them to do on their tickets. the information they provided wasn't completely wrong, but half of it was based on a misunderstanding of how the code worked on the backend

Punster McPunisher, Thursday, 13 May 2021 17:22 (three years ago) link

was a task ticket. config needed generating and deploying so that things can flow through the system but, y'know, if the inputs i'm given are wrong AND the outputs i'm given are wrong then it's going to be all the harder.

(usually this configuration is 600 urls spread over 80 files. and there are ~30 sets of this. (i spent a bunch of time sorting out templates and scripts to generate this, which made helped) but these need a different (much smaller, thankfully) set of templates)

koogs, Thursday, 13 May 2021 17:56 (three years ago) link

oh that sounds brutal. nothing like wasting time doing so much work for nothing

Punster McPunisher, Thursday, 13 May 2021 17:58 (three years ago) link

you know you're in trouble when the reference documents look like this

https://dashif.org/docs/DASH-IF-IOP-v4.2-clean.htm

koogs, Thursday, 13 May 2021 18:20 (three years ago) link

wow. good luck, man. a related gripe i have about doing things that take a while is that the next person/middle management comes in and says how simple the solution was, because they're hardly aware of all the work it took to get there. everything seems simpler in retrospect.

Punster McPunisher, Thursday, 13 May 2021 23:58 (three years ago) link

tickets for system experts should be outcomes and not specific values imo

the problem is no one writing or (not in your case) reading tickets is an expert so it’s a shitshow

mh, Friday, 14 May 2021 01:42 (three years ago) link

https://dashif.org/docs/DASH-IF-IOP-v4.2-clean.htm

LOL! we had a vendor come back to us today saying "the file you generated has a lowercase 'y' but it should be uppercase" ..and i flashed back to the discussion i had with my developers a month ago about how bizarre it was that it would be 'y' and 'N' but the docs clearly show a lowercase 'y'...

diamonddave85​​ (diamonddave85), Friday, 14 May 2021 04:29 (three years ago) link

and then you're here* until 9:15 making sure all your ducks are in a row and the next morning the ducks prior to your ducks are nowhere to be seen, not a quack.

until, about 6:30 tonight when they'll start squawking, probably.

(* here being just sat on the sofa so no real hardship. and i did take an hour out to eat something and watch grand designs australia)

> the next person/middle management comes in and says how simple the solution was,

yeah, this. sometimes a ticket is only a 3 word change, but working out what those 3 words were, ruling out all the other words, and where they need to go can take a week. i do wonder how we managed before the internet.

koogs, Friday, 14 May 2021 12:27 (three years ago) link

career: team lead pushing to get us all promotions. but that entails writing 300 words each on things like "Flexibility" and "Influencing" and demonstrating same and that writing seems so far away from what i actually do, and i'm so terrible at it, that i really can't be bothered.

koogs, Tuesday, 18 May 2021 11:47 (three years ago) link

Buckle up and do it, it’s not like you’ll be held accountable to it, or pay someone to do it

Clara Lemlich stan account (silby), Tuesday, 18 May 2021 15:07 (three years ago) link

two months pass...

18 months we've been doing this project (originally scheduled for 6 months, but hey...). yesterday something happened which broke everything (in the TEST environment) and we've no idea what is was or how to fix it. things are arriving at the first component and instead of being saved to s3 and passed onto the second component they are just stopping. no logging of errors. nothing.

also quite poor that it took 24 hours for us to notice it had broken.

koogs, Friday, 30 July 2021 12:54 (three years ago) link

^ someone updated the db to be Khaki with a capital K and our code is case sensitive. the input urls had khaki with a small k and didn't match.

koogs, Friday, 30 July 2021 13:42 (three years ago) link

that is so classic <3

davey, Friday, 30 July 2021 14:08 (three years ago) link

we'd still be looking for the problem if it was a trailing space, say

(which is why to this day every time i log something i put square brackets around it)

koogs, Friday, 30 July 2021 14:11 (three years ago) link

two weeks pass...

one tiny button, 42 live aws instances redeployed... always a nervous time

koogs, Wednesday, 18 August 2021 09:57 (three years ago) link

three weeks pass...

go on holiday for a week (i say holiday but it was the same sofa, different laptop) and they rewrite all your code...

worst is this. i think i saw it first in perl but this is ruby, moving the condition after the action... my eyes see the call to error, and don't see the condition because who puts the condition on the end?


// Object must not have a thing
error("Something is wrong with {object}") unless thing.nil?

(also in real life the message is longer so the condition is much further over to the right)

(it used to say


// Object must not have a thing
if ! thing.nil?
error("Something is wrong with {object}")
end

which is much more english-like and preferable)

rubocop prefers the former for conditions with single lines. i think rubocop is mostly bad and the way we do whatever it says even if it's patently worse annoys me.

happy programmers' day btw, 256th day of the year...

koogs, Monday, 13 September 2021 11:55 (three years ago) link

(Gah! code mangled because bbcode complained like 6 times in a row. doesn't seem to like hashes or single quotes or something)

koogs, Monday, 13 September 2021 11:55 (three years ago) link

ha. that is weird. but i've never used ruby.

since it's programmer's day, i guess it's only good and proper that i make publicly aware my biggest pet peeve: not just lack of documentation but wrong documentation!

i'm going over this c# codebase and it's lightly sprinkled with comments here and there and some of it references outdated or blocks of code found elsewhere, lol

happy programmers' day!

Punster McPunisher, Monday, 13 September 2021 16:03 (three years ago) link

I've been doing Ruby for 5-6 years now and the modifier syntax is actually pretty easy for me to read at this point.

Also, Rubocop hates this syntax:


if !...

Carte Blanchett (Leee), Monday, 13 September 2021 17:58 (three years ago) link

tbh, i kinda hate that syntax, it's very easy to overlook the ! especially if there's no space following

post-conditions make more sense if the action is the default rather than the exception

do_something() unless it_is_the_weekend

i might have mentioned this before but in a previous job someone wrapped virtually every line of code in a method called log_error()

log_error(perfectly_good_call());
log_error(no_problems_here());
log_error(this_works_fine());

it would only log if the call returned an error but it confused the hell out of me.

koogs, Monday, 13 September 2021 19:35 (three years ago) link

this is one of the things i like about (python) decorators. they make that kind of wrapping more easily ignored by everyone else.

𝔠𝔞𝔢𝔨 (caek), Monday, 13 September 2021 19:57 (three years ago) link

it's a weird thing to have baked into your linter, but i guess whatever is making ruby simpler must butt heads with testing for false, as it can be counterintuitive?

Punster McPunisher, Monday, 13 September 2021 22:05 (three years ago) link

Well I think that there are two reasons:

1. Sometimes people will write this:


if !...
else
end

2. Ruby has unless (which I personally hate), and the out-of-the-box linter favors using it to

if !
.

Carte Blanchett (Leee), Monday, 13 September 2021 22:31 (three years ago) link

two months pass...

my friend sent me a screenshot of some code he had to pick up for maintenance at work and the first line was

String number;

off to a good start

mh, Tuesday, 16 November 2021 14:32 (two years ago) link

I actually spend a lot of my time working on a system that was built from the ground up in Java by someone who must've been entirely self-taught, because the formatting and code style she used was unlike anything I've seen. She did wind up making her own int, String, and boolean objects and I feel like I have to answer once a week "what is an EsInt?"

frogbs, Tuesday, 16 November 2021 14:40 (two years ago) link

xp

haha, at least it wasn't String n;

Chicks and Ducks and Geese better scurry (Ste), Tuesday, 16 November 2021 15:17 (two years ago) link

oh cos it's a string. this is why i'm not a programmer too.

Chicks and Ducks and Geese better scurry (Ste), Tuesday, 16 November 2021 15:18 (two years ago) link

there are a million reasons why you’d put something numeric in a string but don’t name it number ffs

mh, Tuesday, 16 November 2021 15:31 (two years ago) link

I enjoyed this

https://www.youtube.com/watch?v=baY3SaIhfl0

talkin' about his flat tire (DJP), Tuesday, 16 November 2021 21:18 (two years ago) link

The QA tester is doing a great job of QA testing there!

more difficult than I look (Aimless), Tuesday, 16 November 2021 21:22 (two years ago) link

ha. it's either like that star trek video or a machine/robot spitting out line after line of detailed information super fast

i'm currently dealing with an insane amount of misspellings everywhere from strings/variables to text/messages we output to the user. when i train our users i actually need to refer to some of the text and, for the sake of simplicity, i need to use the really bad grammar. it's horrible!

Punster McPunisher, Wednesday, 17 November 2021 05:06 (two years ago) link

can't run that ruby script that worked fine last week because someone has removed the gems it uses from the repository (ok, probably security related, but still a forced update, and it's never only one gem)

can't install aws stacks because someone has changed the script to use poetry to control dependencies now and not whatever we used before. and bumped the required versions of *both* ruby and python to versions released less than a month ago.

hours installing those, and the required pips and gems over a slow 3g connection (still not finished). and all i wanted to do was add *one* value to an aws stack.

koogs, Thursday, 18 November 2021 12:40 (two years ago) link

i consider myself somewhat of an expert at "getting things to build" and i've had so many problems trying to get python shit to work that i don't even bother anymore

diamonddave85​​ (diamonddave85), Thursday, 18 November 2021 18:37 (two years ago) link

somewhat related: https://drewdevault.com/2021/11/16/Cash-for-leftpad.html

diamonddave85​​ (diamonddave85), Thursday, 18 November 2021 18:38 (two years ago) link

two weeks pass...

so, thirty lines of java, which can throw exceptions in 5 different places within it. i did have try-catch around each one but it was ridiculous (and half as long again) so instead i put one try catch around the entire lot and it was much neater.

only i got moaned at in the code review that the block was too long.

the internet is no help. stack overflow suggests putting each bit of code that can throw exceptions into a different method which gains you NOTHING as far as i can see - the method will still throw the exception, still needs handling in the caller. and needs overhead with passing parameters.

also, "don't log and rethrow" was another comment. i guess that's so it doesn't get logged in the child and again in the parent. but when unit testing you don't see the parent's logging. so i'm leaving that, at least until the project is mor than 20% done.

koogs, Monday, 13 December 2021 17:38 (two years ago) link

i wonder if any of those companies that offer me jobs on linked-in that start at twice my current salary have such code reviews?

(nah, my imposter syndrome is already bad enough)

koogs, Monday, 13 December 2021 17:49 (two years ago) link

Will never understand religious adherence to coding guidelines. Also I hate the term "code smell".

big online yam retailer (ledge), Monday, 13 December 2021 17:51 (two years ago) link

I'm surprised exceptions are still handled the same way 22 years after I learned them. such an ugly mess.

adam t. (abanana), Monday, 13 December 2021 18:05 (two years ago) link

just put `throws Exception` on every method and let the spring's global handler deal with it

diamonddave85​​ (diamonddave85), Tuesday, 14 December 2021 01:38 (two years ago) link

two weeks pass...

You guys should look at Mike Nesmith's FB post from April 3. Made me LLOL. #OneInstructionPerClockCycle

Me IRL, U URL (James Redd and the Blecchs), Friday, 31 December 2021 16:36 (two years ago) link

> career: team lead pushing to get us all promotions. but that entails writing 300 words each on things like "Flexibility" and "Influencing" ... i really can't be bothered.

reader: didn't do this, didn't get a promotion, but did get the equiv payrise! (and paid in jan, but backdated to sept!). was the last thing the previous dept boss did before he left for sunnier climes, although it had been in the works for a while apparently. i think they are desperate to keep people.

doesn't stop the person above me keeping my things in review for ever over perfectly good design decisions. week's worth of code, 3 weeks in review and it's got so toxic that i can't bear to look at his latest suggestions.

(basically i encapsulated the logic in two static methods in another class with known inputs and outputs, keeping the parent class and *all the parent's tests* boilerplate. he wants the logic in the parent class where it means the parent class and the testing will be different for every future version of this code (it's a microservice, we'll reuse it). and the logic will go into predicate classes, which are generally 20 lines of code to call one if...)

koogs, Thursday, 6 January 2022 14:37 (two years ago) link

three months pass...

people who insist on doing cosmetic refactors in the middle of fixing review comments. make the diff twice as confusing, drag the review process out a bit more.

github's new 3-panel diff is terrible, they've added the file tree as a leftmost column meaning there's even less width for the other two. everything is truncated or wrapped. i'm guessing their designers all have 4k screens.

koogs, Friday, 8 April 2022 13:27 (two years ago) link

i have two 27-inch monitors and i find those aren't enough. we all work from home but another dev i work with tells me he has a huge curved monitor and every time he screen-shares he has to change the resolution so things won't be so tiny on the other person's screen

on another note, i took a sick day today because the last two weeks have been so incredibly busy i hardly had time to eat

Punster McPunisher, Friday, 8 April 2022 18:04 (two years ago) link

Fortunately you can collapse that file tree sidebar, and it'll remember that preference.

Pomelo Anthony (Leee), Friday, 8 April 2022 19:42 (two years ago) link

people with those massive curved monitors seem like they hate their computers whenever they're on hangouts

𝔠𝔞𝔢𝔨 (caek), Friday, 8 April 2022 21:52 (two years ago) link

wait what's the 3 panel diff, I only have the file tree (which I actually welcome, find it really useful) and the file changes

even the birds in the trees seemed to whisper "get fucked" (bovarism), Friday, 8 April 2022 23:11 (two years ago) link

my monitor is like 22" or something and that seems plenty. the one at work is ridiculous, like 32" or more and people do have trouble with those when sharing on zoom because nobody can read anything

even the birds in the trees seemed to whisper "get fucked" (bovarism), Friday, 8 April 2022 23:11 (two years ago) link

> wait what's the 3 panel diff...?

it's literally the three panels you go on to describe! it used to be only the two files side by side (which was narrow enough) but the file tree now takes a third of the screen.

oh, maybe you're using the combined diff, not the side by side version, there's an option

and i hadn't spotted the slightly cryptic button to hide the file tree, so that might help, thanks

no external monitor just the one built into 15" laptop

koogs, Saturday, 9 April 2022 02:51 (two years ago) link

yeah it's not side by side, just vertical, but that must be the default option because I've never changed anything on it, didn't even know there was a side-by-side diff tbh

even the birds in the trees seemed to whisper "get fucked" (bovarism), Saturday, 9 April 2022 13:49 (two years ago) link

this youtube channel is pretty hilarious

https://www.youtube.com/watch?v=Uo3cL4nrGOk

https://www.youtube.com/watch?v=bXzTXD_OJo0

Punster McPunisher, Saturday, 9 April 2022 20:56 (two years ago) link

I quite like reviewing in Github by pressing . to open the VSCode online editor - it’s much easier to see what‘s going on in a PR IMO.

Chewshabadoo, Sunday, 10 April 2022 15:50 (two years ago) link

this youtube channel is pretty hilarious

favourite lines are from the C++ dev: "runtime error detection is the programmer's responsibility", "we need to see the compiler as...enemy"

TWELVE Michelob stars?!? (seandalai), Sunday, 10 April 2022 22:08 (two years ago) link

two months pass...


names = ("name1", "name2")\
if os.environ['ENV'].lower() == 'test' else ("name1",)

python code it is, readable if yoda you are.

koogs, Wednesday, 15 June 2022 12:32 (two years ago) link

I'll have chicken if it's cheap, otherwise I'll have chips.

The linebreak seems unnecessary. Oh no it's over 80 characters long, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaargh!

dear confusion the catastrophe waitress (ledge), Wednesday, 15 June 2022 13:49 (two years ago) link


i'll have chicken and chips
if it's cheap else i'll have chicken

then-if-else, as nobody calls them

koogs, Wednesday, 15 June 2022 14:12 (two years ago) link

eh, i don't think `a if cond else b` is significantly more/less readable than any other ternary syntax, e.g. `cond ? a : b`.

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 June 2022 16:16 (two years ago) link

I dislike the original because I like the default condition first and having test as the default is uh, safer but not what I'd do

mh, Wednesday, 15 June 2022 16:22 (two years ago) link

I think if/then/else syntax has absolutely trained developers of a certain age (e.g., me) to expect to see the condition first; that Python excerpt reads like someone said "my code would flow much better if it was arranged like German verbs or Spanish adjectives" and I'm getting irrationally angry about it (also I have never looked at or written Python code in my life).

castanuts (DJP), Wednesday, 15 June 2022 16:33 (two years ago) link

the ?: is odd because of the use of only punctuation. and how do you nest them? it's probably ok if the bits are short, or indented correctly


thing = (v_one == v_two)
? same
: different

with 'a if cond else b' there's more chance that the condition is further to the right than i like, and => easier to miss. i guess he moved the if onto the second line to make it clearer, but made it worse - it looks like another, badly indented, statement,

> developers of a certain age

it me

> having test as the default is uh, safer

i may've flipped the logic whilst anonymising it for posting

actually, i guess this would work


thing = safe_default
if (rare condition)
thing = special case
end

which looks a lot like the original but is in fact the opposite. maybe that's my issue with it

koogs, Wednesday, 15 June 2022 17:00 (two years ago) link

this is baffling to me.

i don't think appeals to english word order make sense when talking about programming languages 1. this is not applescript 2. plenty of programmers are not native english speakers. 3. english word order is very flexible.

but to the extent they do: "x is y if condition, otherwise it's z" doesn't seem like non-english word order at all. it's idiomatic english.

if the argument is that this is unintuitive (hard to read?) for non-python programmers, i think that applies more to ternary operator syntax in every language that uses random punctuation like ? and :

if you really want a ternary one-liner with the condition first a la js, replace ? with "and" and : with "or", i.e. x = condition and y or z. this obviously sucks, but no more than random punctuation.

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 June 2022 17:27 (two years ago) link

koogs i feel like your complaint is with ternary, not with the python syntax for ternary.

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 June 2022 17:28 (two years ago) link

I think it's not english word order, it's just convention and the programming languages/syntax I'm used to using.
I was looking at some python a coworker wrote and it was obviously written by someone used to C#. It's just idiomatic. I'd say over half of scanning over code and thinking you know what's going on is down to convention and not enforced language structure

that said,
the ?: is odd because of the use of only punctuation. and how do you nest them?
I got so used to parsing these in my brain that it'd disgusting. Mostly due to coworkers doing
var x = condition ? condition 2 ? a : b : c

I haven't done that or read through that in a few years so please clown me if I botched it

mh, Wednesday, 15 June 2022 17:41 (two years ago) link

fwiw you are only truly a savage if you start doing one convention in a project that completely uses another (while others are still working on it) or if you just do your conditionals a bunch of different ways for no conceivable reason

mh, Wednesday, 15 June 2022 17:42 (two years ago) link

it's more to do with putting the important information first.

let thing = "some value" if (whatever)

this is an assignment. oh, but it's conditional. i would've preferred to know that first. i basically want to read as little as possible of the line before i can decide whether it's important or not.

throw massive exception (argh!) if appropriate (oh...)

koogs, Wednesday, 15 June 2022 17:49 (two years ago) link

var x = condition ? condition 2 ? a : b : c

yeah my reaction to this is mostly: if you think ternaries in python are bad, wait until you see how people use them in practice in js.

throw massive exception (argh!) if appropriate (oh...)

i get your point but fwiw you can't throw in a ternary.

𝔠𝔞𝔢𝔨 (caek), Wednesday, 15 June 2022 18:18 (two years ago) link

code review today (please excuse clumsy anonymising)


...
.withXXXXXXXXXXXXStartTime(OffsetDateTime.parse((somethingInfo.getXXXXXXXXXXXXStartTime() == null) ? XXXXXXXXXXXXX_START_TIME : DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'").withZone(ZoneId.of("UTC")).format(Instant.EPOCH.plus(somethingInfo.getXXXXXXXXXXXXStartTime()))))
...

kids today with their 300 character-wide monitors

koogs, Thursday, 16 June 2022 16:59 (two years ago) link

yeeeikes

𝔠𝔞𝔢𝔨 (caek), Thursday, 16 June 2022 17:27 (two years ago) link

> if you think ternaries in python are bad, wait until you see how people use them in practice in js.

or java...

koogs, Thursday, 16 June 2022 17:34 (two years ago) link

koogs, when did you start maintaining my old code from a decade ago

mh, Thursday, 16 June 2022 18:24 (two years ago) link

actually, more like fifteen years ago. me old

mh, Thursday, 16 June 2022 18:25 (two years ago) link

Is there a data science thread? I’ve found myself managing some data scientist on a pretty cool project but I am completely out of my league. I work in geography (English major here!) and I’ve been on the job for awhile so I can at least act as an SME but these kids are doing some insane stuff.

Heez, Thursday, 16 June 2022 20:25 (two years ago) link

we should start a real one. we’ve just been bouncing between this one and caek’s corner iirc

mh, Thursday, 16 June 2022 21:03 (two years ago) link

in my review i suggested moving the 300 character line of code into a separate method and calling that instead.

he duly copied the line verbatim into another method, so there's now a new method with a single 300 character line in it...

koogs, Friday, 17 June 2022 10:36 (two years ago) link

Programmers gonna literal.

Chewshabadoo, Friday, 17 June 2022 10:48 (two years ago) link

lmao

castanuts (DJP), Friday, 17 June 2022 14:52 (two years ago) link

Classic!

Jimmy Jimmy Loves Mary-Anne Mary-Anne (James Redd and the Blecchs), Friday, 17 June 2022 14:55 (two years ago) link

I don't think I've ever typed this out before but one thing I haven't forgotten over many years is someone once saying about someone else "he really is an automaton."

Jimmy Jimmy Loves Mary-Anne Mary-Anne (James Redd and the Blecchs), Friday, 17 June 2022 14:56 (two years ago) link

regexp help. need at least 1 of A B and C, in order

9A9B9C
9A9B
9A9C
9B9C
9A
9B
9C
are all ok (where 9 is any digit). blank is not

so far i have

/^(9A9B9C|9A9B|9A9C|9B9C|9A|9B|9C)$/

which reduces down to

/^(9A(9B9C|9B|9C|)|9B(9C|)|9C)$/

there's slightly more to it than this but this is the crux

koogs, Monday, 20 June 2022 16:08 (two years ago) link

no reason it has to be one line, of course.

koogs, Monday, 20 June 2022 16:30 (two years ago) link

since we got on Java 8 there's been like a competition to see who can make the most convoluted lambda expression possible, I hate it cuz these are so hard to debug

our transfer objects go like 6 layers deep. yeah a bunch of nested if loops looks like crap but you can at least step through it and easily make changes. we have a new developer on one of them now, I can only imagine how much he'd struggle if I did things the way everyone else was

frogbs, Monday, 20 June 2022 17:46 (two years ago) link

Koogs, I’m not great at regex but I find the editor at regexr.com quite useful- lots of user submitted patterns too that can be lifted and adapted

she started dancing to that (Finefinemusic), Monday, 20 June 2022 18:31 (two years ago) link

i don't think we'll ever use more than one of A, B or C, so it'd just be 9b;ABCd; if i had my way.

(will that work?)

koogs, Monday, 20 June 2022 20:24 (two years ago) link

no.


9[ABC]

koogs, Monday, 20 June 2022 20:25 (two years ago) link

lol java 8, they’re on 17 now bruv

(8 is fine, I crack up that they finally did a version release strategy but it’s a major number so often)

mh, Tuesday, 21 June 2022 01:30 (two years ago) link

last 3 components i worked on here were 2014 vintage and needed Java 8, wouldn't compile under (our default) Java 11. i didn't upgrade them.

Been downhill all the way with Java since they introduced lambdas.

koogs, Tuesday, 21 June 2022 01:37 (two years ago) link

beginners mindset, you’re worse than a weird .net bro now

mh, Tuesday, 21 June 2022 01:40 (two years ago) link

That sounds like a very difficult thing to do in regex, but fairly simple in regular code.

o. nate, Tuesday, 21 June 2022 17:29 (two years ago) link

lol java 8, they’re on 17 now bruv

yea we recently upgraded to 11, idk when we'll ever get to 17. i mean what's the point

frogbs, Tuesday, 21 June 2022 17:47 (two years ago) link

I think I'd just do /^(9A)*(9B)*(9C)*$/ and check not empty/null separately tbh?

I'm assuming that checking for empty string is like one brief, readable line despite my suspicions about Java. I might not be understanding the requirements correctly though and my regexping is rusty.

(tbh I am rustier than ever at programming in general, which I was never good at, and I feel like my days at my current job are numbered because my brain seems to have died and we're implementing a new system I don't understand or care about understanding at all. Sort of feel I should completely give up on making a living doing anything tech-related but can't think of what else I might possibly do. I remember saying all this before, almost exactly half my lifetime ago at the start of my non-career, and probably on this thread several times since then...)

(Current job is in theory part scripting and part support, and the support part expands to fill 99.9% of the time. That's what support jobs are like, right? But also I let it do so, because I always put off any tasks which require
1. concentration/flow/clear-headed thought/forward planning
2. the perceptivity to think of all the possible disastrous problems and guard against them
3. the calmness not to stress yrself to death thinking about what examples of 2 you've forgotten and how much of the database it might delete and how your coworkers will hate you and the boss will thunder down the hall going "WHICH IDIOT LET THIS HAPPEN", again)

a passing spacecadet, Tuesday, 21 June 2022 18:31 (two years ago) link

I think I'd just do /^(9A)*(9B)*(9C)*$/ and check not empty/null separately tbh?

This works from what I can tell, and the only suggestion I'd make is to not bother with capturing them if that's needed:

/^(?:9A)*(?:9B)*(?:9C)*$/

Antifa Lockhart (Leee), Tuesday, 21 June 2022 18:43 (two years ago) link

it's ruby, but that doesn't matter.

i went with readability in the end, listed all the valid combinations in separate lines. you can golf these things but there's a point where concise becomes curt and that's everything i don't like.

but wouldn't /^(9A)*(9B)*(9C)*$/ allow 9A9A9A9A? i can only have at most one of each. replacing the *s (0 or more) with ?s (0 or 1) should do. then, yes, just need to catch "" separately

koogs, Tuesday, 21 June 2022 20:46 (two years ago) link

as for fuckups, we have two components, A (currently on version 367) and B (currently on version 317) and i managed to deploy version 317 of component A to LIVE and didn't notice for an ENTIRE DAY. this is public facing stuff, 10s of thousands of users and not a single bug report or alert. so either nothing important has happened in those last 50 versions or all the built-in redundancy works.

(i've added checks so it won't happen again - it'll now look up the version itself)

koogs, Tuesday, 21 June 2022 20:55 (two years ago) link

but wouldn't /^(9A)*(9B)*(9C)*$/ allow 9A9A9A9A? i can only have at most one of each.

Sorry, yes, it would - I misread "at least 1 of A, B and C" to mean that repeats were OK as long as A-B-C were still in order.

Probably something to be said with listing the valid combinations separately for readability, though. As long as it doesn't result in such a massive list nobody will ever read the whole thing...

a passing spacecadet, Tuesday, 21 June 2022 21:20 (two years ago) link

maybe i'm missing something but isn't it just A.*B.*C
haven't done regex in ages

adam t. (abanana), Friday, 24 June 2022 17:01 (two years ago) link

never mind

adam t. (abanana), Friday, 24 June 2022 17:04 (two years ago) link

two months pass...

maybe i should do more regex? tried for a programming job for the first time in over a decade, flubbed a coding task where it required a "\w" but I put in a "*". fun but stressful.

formerly abanana (dat), Wednesday, 24 August 2022 04:40 (two years ago) link

i love writing regexes--they're like a fun puzzle imo. regex101.com is a good tool for writing/debugging

diamonddave85 (diamonddave85), Wednesday, 24 August 2022 14:46 (two years ago) link

but \w / \W seems designed to confuse

koogs, Wednesday, 24 August 2022 15:26 (two years ago) link

I enjoy writing regexes too, but I don’t think I’ve ever written one without referring to a cheat sheet. They don’t seem like good material for interview questions because who can remember all those special characters.

o. nate, Wednesday, 24 August 2022 18:41 (two years ago) link

I have spent my entire career avoding using regex as much as I possibly can, the most unreadable abominations that they are.

Chewshabadoo, Wednesday, 24 August 2022 19:00 (two years ago) link

xp yeah it reminds me of the tests I got in college where you had to remember specific syntax which always felt dumb because in the real world you could just Google it. which I still do, often :)

in retrospect it was kind of funny how adamant they were about not sharing your code with your classmates, even calling it "plagiarism" over and over, when in reality like half of what I do is copy something and change it a bit

frogbs, Wednesday, 24 August 2022 19:04 (two years ago) link

lol, I was careful to specify that I enjoy writing regexes. Reading them, not so much.

o. nate, Wednesday, 24 August 2022 19:38 (two years ago) link

you bugger

the man with the chili in his eyes (ledge), Wednesday, 24 August 2022 19:58 (two years ago) link

(Google image search has the answer. i remember doing it at the time and getting less than half)

koogs, Wednesday, 24 August 2022 20:05 (two years ago) link

two months pass...

https://thetypingoftheregex.com/

ionjusit (P. Flick), Thursday, 27 October 2022 14:29 (two years ago) link

so,

"What have you done to his eyes?"

with "What" and "have" highlighted. what matches that? 4 letter words with a 'ha' in them? how do you write that as a reg exp? what am i missing?

koogs, Thursday, 27 October 2022 15:57 (two years ago) link

would it work to do everything in string before 'you'?

I have to google regex solutions rather than knuckling down and learning the syntax, so i don't share this as someone who can complete it. Admire anyone who can though!

ionjusit (P. Flick), Thursday, 27 October 2022 16:44 (two years ago) link

um, maybe, letters rather than words. it goes so quickly though it's hard to spot the patterns.

i had another that was two words starting with ex among other words.

koogs, Thursday, 27 October 2022 17:16 (two years ago) link

there's a video of the game on the guy's twitter feed, you use the global flag: /What|have/g

ledge, Thursday, 27 October 2022 17:49 (two years ago) link

I guess /[^\s]+ha[^\s]+/ would work, harder to type quickly though.

ledge, Thursday, 27 October 2022 17:52 (two years ago) link

Ugh so fussy, but I guess that's regex for you (I keep forgetting to match the punctuation when that's part of what it looks for).

Fartleby the Scrivener (Leee), Thursday, 27 October 2022 18:01 (two years ago) link

i've written my fair share of regexes and i have no idea how to do the exclusions... what's the syntax? also symbol ligatures (try typing !=) are for disgusting savages

diamonddave85 (diamonddave85), Thursday, 27 October 2022 19:55 (two years ago) link

symbol ligatures and cursive italics or, as i call it, "frontend brain".

𝔠𝔞𝔢𝔨 (caek), Thursday, 27 October 2022 19:57 (two years ago) link

ligatures and italics have over 600 years or + of history tho – I think they're extremely useful.

fpsa, Friday, 28 October 2022 02:47 (two years ago) link

Regex is, and always has been, a horror show, so this is very apt.

Chewshabadoo, Friday, 28 October 2022 07:15 (two years ago) link

regex stands for reginald, ex-marine

lag∞n, Friday, 28 October 2022 19:04 (two years ago) link

I feel a new screename comin' on!

Capital Radio Sweetheart (James Redd and the Blecchs), Friday, 28 October 2022 19:17 (two years ago) link

HI DERE!

Regex Dwight (James Redd and the Blecchs), Friday, 28 October 2022 19:20 (two years ago) link

Should probably post this in the macOS hoonja-doonja thread, but holy crap this was the best $3 I spent.
https://krillapps.com/patterns/

Elvis Telecom, Wednesday, 2 November 2022 08:49 (two years ago) link

My point is really that product designers who can’t program struggle to iterate. They can make the design process feel glacial and cumbersome. If you can program, it’s possible to brute-force a solution and retain some creative momentum. I guess this is probably a better discussion for a different thread!

― Allen (etaeoe), Friday, November 4, 2022 12:09 PM (ten minutes ago) bookmarkflaglink

ok i put it here

lag∞n, Friday, 4 November 2022 16:21 (two years ago) link

whats the nature of the block as far as iteration just not understanding how much work various changes will take / inability to design with flexibility baked in

lag∞n, Friday, 4 November 2022 16:23 (two years ago) link

the one good PM i've ever worked with came from 4th line tech support. PMs who start there career in non-technical roles are generally useless. MBA types are worse.

𝔠𝔞𝔢𝔨 (caek), Friday, 4 November 2022 16:40 (two years ago) link

lol I had typed out a long comment responding to that in the other thread but gave up when it was moving too quickly

mh, Friday, 4 November 2022 18:08 (two years ago) link

tl;dr version is that product ideas and direction can come from anywhere but you have to
1. Have someone running a project who can comprehend the nature of the work being done by people reporting to them, whether that's a management relationship or just a project coordinator
2. Have people who can successfully break that work down into digestible components, and explain to that management how they have value. Maybe that's an individual developer, maybe that's the person guiding a software development team

not all projects have easy first deliverable pieces and the terrible project managers are the ones who think a demo is going to "work" off the bat. and the really bad ones don't understand what completing something looks like and think that as soon as it appears to "work" you can just send it out the door

mh, Friday, 4 November 2022 18:16 (two years ago) link

are we talking about project managers or product managers? i was talking about product.

𝔠𝔞𝔢𝔨 (caek), Friday, 4 November 2022 18:18 (two years ago) link

I think product design (what is the thing being addressed, what are the working parts, how do people interact with this) is a different skill from product management or project management, for sure

one of the best project managers I had did work to learn all the jargon and how the pieces interacted but had absolutely no idea what half the things actually were. but they could run meetings very well, communicate with other groups to figure out if we were lined up with what other teams and stakeholders expected

mh, Friday, 4 November 2022 18:20 (two years ago) link

yeah I kind of conflated the two, but I think in the twitter example (sleeping on floor lady) it sounded like those roles were also very conflated

mh, Friday, 4 November 2022 18:21 (two years ago) link

They are often conflated. They shouldn’t be! I do think both are valuable, I just don’t think product designers who make web shit but can’t program are super useful.

Allen (etaeoe), Friday, 4 November 2022 18:49 (two years ago) link

I don’t know if we’re too easy on product designers (i.e., it’s fine you don’t know anything about technology) or too easy on engineers (i.e., it’s fine you don’t know anything about the product you’re writing). Maybe it’s both.

Allen (etaeoe), Friday, 4 November 2022 18:50 (two years ago) link

I've mentioned it before, but the one guy I knew in high school who was enamored with Google when it first appeared in the late 90s, then went to the nice school, did a non-programming course of study, and then went to work at Google was just heartbroken when he got there and found out that management wouldn't even consider product ideas if they didn't come from programmers

he quit that place and did ok later though

mh, Friday, 4 November 2022 18:56 (two years ago) link

one month passes...

broke some tests that were asserting using the toString() output of an object containing other objects containing other objects containing other objects

koogs, Wednesday, 21 December 2022 11:25 (one year ago) link

I respect their confidence in their ability to maintain consistent string representations.

Allen (etaeoe), Wednesday, 21 December 2022 14:14 (one year ago) link

elsewhere we have tests that compare the md5sum of the (binary file) output with an expected md5sum. and if they don't match, then what? absolutely no way of debugging it. could be one bit out, could be complee garbage.

koogs, Wednesday, 21 December 2022 15:01 (one year ago) link

One bit out would be impressive, until your assassination by the NSA shortly after.

Andrew Farrell, Wednesday, 21 December 2022 18:47 (one year ago) link

(i didn't mean we were generating clashes, more that the output could be a single bit different from the expected but the md5sum would be completely different and there'd be no way of knowing how close you are)

koogs, Wednesday, 21 December 2022 19:46 (one year ago) link

Oh yeah, sure!

Andrew Farrell, Wednesday, 21 December 2022 19:50 (one year ago) link

I think it’s relatively affordable these days to generate MD5 collisions these days

G. D’Arcy Cheesewright (silby), Wednesday, 21 December 2022 21:15 (one year ago) link

Oh yeah good point!

Andrew Farrell, Wednesday, 21 December 2022 21:23 (one year ago) link

these days!

G. D’Arcy Cheesewright (silby), Wednesday, 21 December 2022 22:41 (one year ago) link

three months pass...

The byline -- is he ours? https://github.blog/2023-03-23-we-updated-our-rsa-ssh-host-key/

Shartreuse (Leee), Tuesday, 28 March 2023 17:45 (one year ago) link

wrong dude

mh, Tuesday, 28 March 2023 17:45 (one year ago) link

spent the last week working into evenings, whilst ill, and through my last non-transferable holiday (meaning i lose it) to get something ready for monday.

today, friday, i find out that

a) i should be using the NEW new api and not just the new api.
b) i don't have the right permissions to use the NEW new api.
c) there's a bug in the version we currently have installed which means the NEW new api doesn't actually work. a working version was installed (on a different stack = config changes) this afternoon. not that i had permissions to use it until 17:15.

they've now moved the deadline back, to the other side of the Coronation, but only at lunchtime. has all been a waste of time.

koogs, Friday, 31 March 2023 16:41 (one year ago) link

two months pass...

filename or fileName?
pathname or pathName?

(i'll take the former every time)

also: https://history-computer.com/sql-vs-css-whats-the-difference-which-is-better/ (ai garbage or parody or what?)

koogs, Thursday, 8 June 2023 16:04 (one year ago) link

generated garbage, yes

mh, Thursday, 8 June 2023 16:07 (one year ago) link

I was confused by the lack of obvious ads, but it's all amazon affiliate links on a number of the pages

mh, Thursday, 8 June 2023 16:08 (one year ago) link

b-but

About the Author
Liam Frady
Liam is a freelance writer with a passion for professional audio, cybersecurity, and information technology. Aside from writing, he can be found in his home studio moonlighting as a mixing and mastering engineer. Outside of work, Liam can be found spending time with his family, cooking up fun recipes he found online, or making music in his spare time.

koogs, Thursday, 8 June 2023 16:19 (one year ago) link

Liam sounds cool

mh, Thursday, 8 June 2023 16:47 (one year ago) link

fun recipe requirements: velveeta and a butane torch finish

Enumerated funks of Walsh, Joe. (Sufjan Grafton), Thursday, 8 June 2023 18:08 (one year ago) link

filename or fileName?

anything as long as it's not hungarian notation

butch wig (diamonddave85), Thursday, 8 June 2023 19:21 (one year ago) link

path_name surely

mh, Thursday, 8 June 2023 20:35 (one year ago) link

if you can't choose between them go with path_Name

ledge, Thursday, 8 June 2023 20:45 (one year ago) link

Path_Name

mh, Thursday, 8 June 2023 20:46 (one year ago) link

path-name

butch wig (diamonddave85), Thursday, 8 June 2023 20:47 (one year ago) link

"path" and "name" are both types, and i too oppose hungarian notation, so i would recommend "x"

𝔠𝔞𝔢𝔨 (caek), Thursday, 8 June 2023 20:47 (one year ago) link

path-name

― butch wig (diamonddave85), Thursday, June 8, 2023 3:47 PM (three hours ago) bookmarkflaglink

Isn't this a FE/BE distinction? Javascript stans would go with camel cased, everyone else would go with snake case (personally I'd prefer pathname).

Cashews Everything Around Me (Leee), Friday, 9 June 2023 00:21 (one year ago) link

what is a "path name" anyway? it's just "path".

𝔠𝔞𝔢𝔨 (caek), Friday, 9 June 2023 03:27 (one year ago) link

I frequently assign a path to 'dirname', which is very bad.

Enumerated funks of Walsh, Joe. (Sufjan Grafton), Friday, 9 June 2023 03:38 (one year ago) link

pathname is an entire path including the filename
as opposed to filename which is the filename part

path, to me, suggests the pathname without the filename

(don't get me started on aws s3 library that expects bucket and key)

this is java, so camelCase. does always raise questions when part of the name is something like API or URL or AWS or SQS or SNS though.

koogs, Friday, 9 June 2023 08:21 (one year ago) link

path-name

easier to type, harder to c+p

ledge, Friday, 9 June 2023 08:29 (one year ago) link

Surely that was a joek answer.

CeeLô Borges (James Redd and the Blecchs), Friday, 9 June 2023 13:09 (one year ago) link

https://www.theserverside.com/definition/Kebab-case

ledge, Friday, 9 June 2023 13:29 (one year ago) link

Thanks.

Note that in python, options specified by kebab-case will be converted to snake_case in the actual code iirc.

CeeLô Borges (James Redd and the Blecchs), Friday, 9 June 2023 13:47 (one year ago) link

(don't get me started on aws s3 library that expects bucket and key)

object storage does NOT have folders no matter how much they make it look like it!

mh, Friday, 9 June 2023 14:09 (one year ago) link

due to interoperability with file systems, you might end up with a prefix in object storage which may look like a path but it's not!

mh, Friday, 9 June 2023 14:11 (one year ago) link

path/name
path--name
path__name
path:name
path;name;
path…nauseum

Chewshabadoo, Friday, 9 June 2023 15:27 (one year ago) link

^ Aren’t folders in a lot of file-systems also an abstraction that doesn’t actually exist?

Chewshabadoo, Friday, 9 June 2023 15:27 (one year ago) link

pathAndFileNameCombinedWithOperatingSystemAppropriatePathSeparatorIncludingOptionalFileExtension

o. nate, Friday, 9 June 2023 15:35 (one year ago) link

ThreadSelectedControllerServlet

ledge, Friday, 9 June 2023 15:39 (one year ago) link

LOL

butch wig (diamonddave85), Friday, 9 June 2023 15:46 (one year ago) link

it's all fake, but you can generally have folders with zero files in them

an object store prefix can't have no values, so you end up with zero byte files to hold them when you sync in an empty directory

mh, Friday, 9 June 2023 15:54 (one year ago) link

object storage does NOT have folders no matter how much they make it look like it!

― mh, Friday, June 9, 2023 10:09 AM (four hours ago) bookmarkflaglink

windows path separators to thread

𝔠𝔞𝔢𝔨 (caek), Friday, 9 June 2023 18:18 (one year ago) link

Well, I got laid off today. Have to remember how to update my resume.

Cashews Everything Around Me (Leee), Wednesday, 21 June 2023 00:20 (one year ago) link

Ugh, sorry.

Holly Godarkbloom (James Redd and the Blecchs), Wednesday, 21 June 2023 00:23 (one year ago) link

sorry to hear that, Lee

mh, Wednesday, 21 June 2023 02:40 (one year ago) link

Sorry to hear that, man

Andrew Farrell, Wednesday, 21 June 2023 12:30 (one year ago) link

Sorry Lee. I'm trying to return to software after a ten-year absence and it seems my timing couldn't be worse

Vinnie, Wednesday, 21 June 2023 14:51 (one year ago) link

Welcome to the party, Leee! :/

sean paul akerman (Whiney G. Weingarten), Wednesday, 21 June 2023 16:11 (one year ago) link

ooof

𝔠𝔞𝔢𝔨 (caek), Wednesday, 21 June 2023 18:31 (one year ago) link

Thanks everyone, this is the first time I've gotten caught up in mass layoffs, so I'm trying to figure out what I should be doing, aside from stuffing my face with comfort food.

Cashews Everything Around Me (Leee), Wednesday, 21 June 2023 20:53 (one year ago) link

Nah you're doing it right

Vinnie, Wednesday, 21 June 2023 21:19 (one year ago) link

I've got a couple Udemy courses that I've let lapse -- React and Docker -- and so I'm getting back on that to see if that'll help me in my upcoming round of applications (I see a LOT of positions that are looking for fullstack). But of course, it's one thing to follow along with the lectures, and another thing when you need to do something in a real-world environment (I have managed to create Redis and Elasticsearch containers, but fully dockerized web apps have been beyond my grasp).

Cashews Everything Around Me (Leee), Friday, 23 June 2023 22:16 (one year ago) link

All the positions right now seem to be looking for Senior devs.

sean paul akerman (Whiney G. Weingarten), Friday, 23 June 2023 22:34 (one year ago) link

three weeks pass...

I dunno if this reflects any larger trends in the industry, but in my last round of interviewing (around 2021), I don't remember doing many/any take-home assignments, with I think 2-3 rounds of technical challenges, most of which focused on design questions (as opposed to "manipulate strings, arrays, or data structures").

This time, I've been interviewing for about 3 weeks, and I've already done one take-home with another one that I have to reserve time for, I've done two technical challenges, both of which have involved string/array manipulation. And, although I haven't gotten that far yet, there seems to be closer to 4-5 rounds of interviews for any given position.

Last of the Mojitos (Leee), Friday, 14 July 2023 02:47 (one year ago) link

I love take-homes. I am not great at recalling terminology, even for concepts I understand well, so I've flubbed some of those answers in past interviews. Take-home is more similar to the real work and I'm much better at that, even under time pressure

Like you Leee, I've been at my search for three weeks now. Out of 40ish applications, only one response, but thankfully it led to an interview and a soon-to-be second interview and seems promising. Just rejections or silence otherwise. I do think I need to change up a few things with the way I'm searching though. And I feel like every listing I see wants experience with Docker so I'll be heading to Udemy for a course soon too

Vinnie, Friday, 14 July 2023 12:20 (one year ago) link

docker is just a fancy vm, right? so that's like asking 'are you good with installing / configuring computers?' does it even say what is running within docker?

the whole dev-ops thing annoys me. used to be two separate jobs taking 100% of someone's expertise. now someone who can code a bit is expected to also know, for example, how to secure a webserver for a national company or how to tune a filesystem for many small files.

koogs, Friday, 14 July 2023 12:39 (one year ago) link

Vinnie, I dread take homes, because for me they take a lot of time and energy. That said, I've actually been making a dent in my Udemy course on Docker and Kubernetes!

And yes, Docker is a modern version of a VM, which, even though I'm not good at it, is a lot easier and faster to set up than whatever Oracle's solution is, namely because Docker containers are usually built on a pared down Linux image.

(Of the job listings that I'm seeing that I have to pass on applying for because I lack the qualifications, it feels like they're usually full stack, and looking specifically for React on the front end.)

Last of the Mojitos (Leee), Friday, 14 July 2023 14:09 (one year ago) link

I haven't been getting callbacks

sean paul akerman (Whiney G. Weingarten), Friday, 14 July 2023 17:25 (one year ago) link

:( Whiney. Spray and pray is unfortunately/probably the most reliable method -- it's a number's game -- unless you're willing to hit up former colleagues and ask them, which I haven't done ~yet~ because that seems overly mercenary and transactional. But if this drags out I'm more than willing to swallow my pride.

I just finished a 2-hour take-home, and my brain is totally exhausted. I have another phone screen in a couple hours, yippee. :\

Last of the Mojitos (Leee), Friday, 14 July 2023 17:41 (one year ago) link

:( Whiney. Spray and pray is unfortunately/probably the most reliable method -- it's a number's game -- unless you're willing to hit up former colleagues and ask them, which I haven't done ~yet~ because that seems overly mercenary and transactional. But if this drags out I'm more than willing to swallow my pride.

Why? I always like helping former co-workers.

Allen (etaeoe), Friday, 14 July 2023 18:07 (one year ago) link

Because it feels nakedly self-serving to me! I know, I should get over that feeling.

Last of the Mojitos (Leee), Friday, 14 July 2023 20:06 (one year ago) link

you should!

𝔠𝔞𝔢𝔨 (caek), Friday, 14 July 2023 20:33 (one year ago) link

FWIW, my best jobs have been found via former co-workers. And I definitely try to help folks who are good and reach out.

xpost I feel compelled to speak up for devops. My experience is that for services you either need to do a devops model (end to end ownership) or a SRE model (professionalized ownership with a seat at the table). In the late 90s and early 2000s, I saw many shops that had a clear distinction between development engineers and "ops" folks. The situation often devolved because the ops folks were not empowered to request the things they needed to make the software operate reliably, so they always got blamed and couldn't do anything about it. Meanwhile, the development engineers just looked down on the ops folks. If you want stuff to work, you just can't do that.

Now, as you grow as a company, it really does make sense to have oncall be split to teams that can handle it during their working hours for the most valuable services, and so that ends up being separate teams from the development team. But these oncall teams basically need the ability to have input into the system design and the roadmap in order to be effective. They need to be able to tell the development team "no".

So yeah these days that probably means you need to know k8 or some basic AWS stuff. That's OK, there's lots of resources on that and I've found it really enlightening and challenging.

fajita seas, Friday, 14 July 2023 23:26 (one year ago) link

Yeah talking to friends/former coworkers for referrals often gets you past the automated resume screening stage, which can filter out even highly qualified applicants. Actually every software job I've had has started out that way, and in one of them, the hiring manager specifically told me "if <my friend> thinks you're good, we trust him". One of the things I mentioned above that I need to change with my job search is do exactly that: more reaching out for referrals, less applying on Indeed or company websites. It's a little less awkward for me to do it this way:

1) stalk them on LinkedIn, see where they work
2) look for suitable positions at their current company
3) msg and say "hey x, noticed you work at y now and I was looking at positions on their website. How is it working there? Mind referring me?"

I also feel guilty asking people for help but this approach means they don't have to do much. Sometimes they get a referral bonus which is nice for both of you

Vinnie, Saturday, 15 July 2023 11:21 (one year ago) link

I'm renovating the format of my resume and one of the things that I've been told is to move my skills section up nearer the top. That being said, how should I organize the skills? I'm torn between doing a flat list in descending order of industry significance, or sectioning things according to languages, databases, frameworks, etc.?

Last of the Mojitos (Leee), Friday, 21 July 2023 23:31 (one year ago) link

I do a Programming list (languages, frameworks) and a Technologies list (applications, standards). Seen some resumes with it broken into like five lists, which seems like overkill. Lately I've been doing the thing of tailoring the resume for every position, so I'll include all the skills I have that are on the listing and I'll drop some other skills to keep each list to one line

Vinnie, Saturday, 22 July 2023 02:46 (one year ago) link

three weeks pass...

I've signed an offer!

Anna Kendrick Lamar Odom (Leee), Friday, 18 August 2023 23:19 (one year ago) link

Cool!

Zing Harvest (Has Surely Come) (James Redd and the Blecchs), Friday, 18 August 2023 23:31 (one year ago) link

Wooooo

sean paul akerman (Whiney G. Weingarten), Saturday, 19 August 2023 00:31 (one year ago) link

Awesome Leee! I also got an offer contingent on the company winning a contract, desperately hoping that comes through because I got nothing else

Vinnie, Saturday, 19 August 2023 01:49 (one year ago) link

Good luck Vinnie!

Anna Kendrick Lamar Odom (Leee), Monday, 21 August 2023 19:22 (one year ago) link

two months pass...

Damn, I hope I never lose my job. They make you do take-home tests now? And along with all the extra studying for all the certifications you need these days. And of course you need to contribute to some open source projects to make your GitHub profile look good, how does anybody find time to do all that?

Mr. Snrub, Sunday, 29 October 2023 10:07 (one year ago) link

Yep take-home tests, leetcode/hackerrank, fundamentals you learnt in college but never use on the job... there's a lot to prepare for! I did put a couple projects on my github but I think that's more important for entry-level or people like me who've been out of the field sometime. I've read most hiring people don't bother to look

Btw I didn't get the job I mentioned upthread so I'm back to the grind. Have a second-round interview next week though

Vinnie, Sunday, 29 October 2023 10:43 (one year ago) link

Is it worth (re)learning front end development in 2023 or will it all be replaced AI soon?

formerly abanana (dat), Sunday, 29 October 2023 14:26 (one year ago) link

Take home challenges have always been a part of some interviews as long as I've been in the field.

Sorry to hear that Vinnie!

I had an actual post apocalyptic nightmare last night where Javascript stopped working.

Iguodalai Lama (Leee), Sunday, 29 October 2023 14:50 (one year ago) link

Front End development involves knowing what users and business analysts want when they can't tell themselves - it'll be the last thing to go!

Andrew Farrell, Sunday, 29 October 2023 21:44 (one year ago) link

This dropped on the AI thread, but certainly pertains to this one. If anything, more so. Worth watching even if just the first 15 min.

https://www.youtube.com/watch?v=JhCl-GeT4jw

more difficult than I look (Aimless), Sunday, 29 October 2023 22:01 (one year 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 (one year 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 (one year 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 (one year 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 (eleven months ago) link

who codes the coder?

koogs, Monday, 6 November 2023 16:43 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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 (eleven 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++

𝔠𝔞𝔢𝔨 (caek), Monday, 6 November 2023 19:11 (eleven months ago) link

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 (eleven 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 (eleven 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 (eleven 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 (eleven months ago) link

three months pass...

smdh JS:


-1 % -1
-0

Selune Gomez (Leee), Tuesday, 13 February 2024 20:47 (eight months ago) link

Fortunately -0 === 0 but still: lol

the new drip king (DJP), Tuesday, 13 February 2024 20:53 (eight months ago) link

unary+ converts an array or boolean to a number
double negation converts an array to a boolean

+[] == 0
+!![] == 1

formerly abanana (dat), Tuesday, 13 February 2024 21:06 (eight months ago) link

the video silby linked eons ago that's mostly about javascript still pops into my head
https://www.destroyallsoftware.com/talks/wat

ɥɯ ︵ (°□°) (mh), Tuesday, 13 February 2024 21:28 (eight months 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 (eight months ago) link

two months pass...

I've started looking again (thankfully a voluntary search this time), but I've been whiffing pretty badly so far. Just 3 phone screens, and nothing beyond that (though I'm not applying every day), and one thing that I've noticed is that I hate the "walk me through a complex project you've worked on" prompt. Maybe this is confirmation bias but I feel like every time I get asked that, the interviewer is at best unimpressed with my answer. What exactly do they want to hear? (Obviously that depends on whether it's an HR person vs. someone on the tech side, but I don't think I've success with either.) If I'm being honest with myself, I don't think I have any impressive projects in my career, but maybe I'm not being generous to myself?

Costas Mandylorian (Leee), Monday, 22 April 2024 02:22 (six months ago) link

Imo the point of that question is to demonstrate some combination of: you are good at explaining something, you have done actual work, you made technical decisions, you worked effectively in a team, you worked effectively with limited direct supervision, you worked effectively with legacy code. It’s not to dazzle the interviewer with like “I wrote full self driving for Tesla!” Just pick something from the most recent gig that you can explain what you did and what the impact was.

G. D’Arcy Cheesewright (silby), Monday, 22 April 2024 03:36 (six months ago) link

For a phone screen, I don't really know what they'd be looking for. Probably some combo of impact and your importance to the team? I've never been asked that question on a screen

But in a technical interview, I've struggled a bit with that question. The only project I've worked on that truly felt complex was in a 16-developer team but I only worked on a couple parts of it in depth and I struggle to explain the project in full

I should mention I did finally get a senior SWE job late last year which I'm still working in now. So far so good: place is a bit behind in tech stack but the people are good to work with and open to improvements. Very relieved to be out of the search for now

Vinnie, Monday, 22 April 2024 10:45 (six months ago) link

I tend not to ask candidates variants of "toughest challenge" or "hardest bug", but if I were to, here's what I would look for:

- Level of technical depth in at least one area engaging with the problem. As you engaged with it, what things did you bring to the table to help break it down? A decent understanding of databases? A clear understanding of how mobile a11y works? considerations around network protocols, latency, errors? Nuances and tradeoffs in web frameworks? Etc

- Field of view: How aware were you of how your work fit into the bigger picture, either with your teammates, your management chain, or other "crossfunctional stakeholders"/non-programmer types? Did you see flexibility in requirements where none was necessarily obvious, bring insight to others or learn insight from others that helped you resolve the challenge?

- What would you have done differently in retrospect, or what did this challenge teach you about how to engage with other challenges in the future?

Not all of everything needs to be present, and a lot somewhere is better than a little everywhere. But that's what I would look for.

One challenge is that the person evaluating you may know absolutely nothing about the domain you were working in. I am fortunate to have a pretty diverse background, but I see this sometimes when I get folks who have very specific experiences that I do not (working on network switches, or non-consumer systems, etc)

fajita seas, Tuesday, 23 April 2024 21:21 (six months ago) link

three weeks pass...

Failed to move onto the next round of interviews at a place I *really* wanted to go to, seriously gutted. I might've come off too strong/desperate.

The Mandymoorian (Leee), Friday, 17 May 2024 17:44 (five months ago) link

two weeks pass...

Found another bug in this framework I'm using (after a few days of crippling self-doubt / depression.)

default damager (lukas), Monday, 3 June 2024 22:55 (five months ago) link

The market seems pretty tight right now, especially if you're trying to avoid the AI craze. Very low rate of responses, as well as an unusually high rejection rate at the initial phone screen stage (or I've become a worse interviewer than the last time I did this).

Scott Baculum (Leee), Friday, 7 June 2024 20:46 (four months ago) link

Here at the big tech company I work at, we are basically hiring zero new grads (after always hiring plenty every year). We don't even have interns.

And we're not hiring anyone else either except as backfills, it seems :(

fajita seas, Friday, 7 June 2024 22:57 (four months ago) link

The changes to Section 174 of the tax code that came due this year that basically made it impossible to hire anyone right now.
https://blog.pragmaticengineer.com/section-174/

Elvis Telecom, Sunday, 16 June 2024 01:26 (four months ago) link

^ of the US tax code

koogs, Sunday, 16 June 2024 06:58 (four months ago) link

I remember a passing conversation with some programmer coworkers over lunch last year and AI got brought up and you could straight up tell they felt their careers were in jeopardy. And now my job has introduced their own new "company AI" and i'm sure they're even more thrilled.

you can't AI plumbing (at least for now).

Western® with Bacon Flavor, Sunday, 16 June 2024 07:05 (four months ago) link

I just hope AI is this year's NFT and the glut of postings for such will decrease sooner or later.

Scott Baculum (Leee), Sunday, 16 June 2024 14:32 (four months ago) link

There was never a there there for NFTs; GenAI definitely has at least some usefulness

stet, Sunday, 16 June 2024 16:57 (four months ago) link

two months pass...

quite a few new starters (offering people voluntary redundancy, it turns out, prompts the experienced people to leave and leaves holes). one of them asks

"can we use kotlin?"

a team works best and is most useful when they all know the code base and can all contribute. anything that only one person knows is a bad thing. i wish more people realised this.

currently having to fix up some python code which is complex, uncommented and full of seemingly random rules. and it just feels like python tools still aren't there yet - no completion in the ide for instance (this might be a function of the lack of strong typing). it's been a frustrating couple of weeks.

koogs, Sunday, 15 September 2024 11:49 (one month ago) link

Looking for some advice, prepared to hear some hard truths.

I muddled my way to a bachelor’s degree in CS but because I suck at life I didn’t do any networking or internships at the time and tbh the projects i worked on at school were pretty weak. I’ve worked on a few software projects by myself since then that would have been kinda impressive in like 2001. So no chance at getting a job in the field right now.

I’m contemplating whether it’s worth dedicating my free time to actually pursuing a career in software development and start building my portfolio, or if I just don’t really have the requisite burning passion to thrive and set myself apart from 1,000,000s of other applicants. I was all set to get to building some sick stuff with React/Next.js but then the crippling fear and the feeling that it’s all pointless sets in. Sorry if this post crosses in and out of mental health junk..

Also wondering if I should just work on getting a CompTIA cert or two and get into IT work. And whether that’s even a viable/reliable path forward. I should probably ask someone at my company’s IT department about this.

Plan C, I have read “electrician” mentioned recently a few times on this board…if I could stick to residential work I might consider looking for into it.

My job isn’t terrible, it’s just that I’ve reached the point where I’ve accumulated a large amount of duties of varying complexity and it’s stressful and I’m not coping well. Hard to find a direction for advancing in my department. And I want to make more money. Feels a bit like this sometimes: https://www.youtube.com/watch?v=d4WrPkKc2Wg

brimstead, Monday, 23 September 2024 20:08 (one month ago) link

I just launched my big portfolio project. It got covered in GQ and Rolling Stone and instead of celebrating, I'm currently debating Plan C myself. It's been really rough out there.

The SoyBoy West Coast (Whiney G. Weingarten), Monday, 23 September 2024 20:13 (one month ago) link

right on, hope you can at least feel some satisfaction in the work you accomplished and that it’s getting attention and appreciation. it’s a super cool app!

brimstead, Monday, 23 September 2024 20:17 (one month ago) link

xp Hey could you release an Android version of that app? :)

fajita seas, Monday, 23 September 2024 20:30 (one month ago) link

My genuine advice for anyone in IT or programming is to coach up in cybersecurity. It’s a smaller pool of talent, still affected by all the layoffpaloozas happening but not quite as bad

trm (tombotomod), Monday, 23 September 2024 20:33 (one month ago) link

xp Hey could you release an Android version of that app? :)

― fajita seas, Monday, September 23, 2024 4:30 PM (thirteen minutes ago) bookmarkflaglink

I've working on it, but hit a speed bump that's going to require some rubber-ducking or reaching out for help

The SoyBoy West Coast (Whiney G. Weingarten), Monday, 23 September 2024 20:45 (one month ago) link

For Android, I'm happy to try to help or to find folks.

fajita seas, Tuesday, 24 September 2024 00:48 (one month ago) link

brimstead:

I’m contemplating whether it’s worth dedicating my free time to actually pursuing a career in software development and start building my portfolio, or if I just don’t really have the requisite burning passion to thrive and set myself apart from 1,000,000s of other applicants.

Despite my recent difficulties with interviewing (still ongoing, sadly), I'm living proof that you don't need to eat, breathe, and sleep coding. I rarely do it outside of work, especially the older I get, and I definitely wouldn't characterize my interest in the field as "burning passion." I'm good at it, I enjoy it as a career, but I mostly leave it alone in my free time. We're not all rock stars, and we don't have to be.

Vincent van Gagh (Leee), Tuesday, 24 September 2024 03:35 (one month ago) link

Thanks, Leee, that is good to hear. Hope a good opportunity comes your way soon.

brimstead, Tuesday, 24 September 2024 21:22 (one month ago) link

I know the market doesn’t support my mindset but honestly the idea that you have to live, breathe, and shit code in order for anyone to deign to give you an interview is the #1 most toxic thing about this industry. Its absolute bullshit and never let anyone convince you otherwise.

DJP, Tuesday, 24 September 2024 22:04 (one month ago) link

especially considering that a lot of people who do get hired shouldn't be anywhere near software development

scanner darkly, Tuesday, 24 September 2024 22:19 (one month ago) link

DJP otm
My little intern buddy for the summer definitely has lived in that world and we spent several months trying to deprogram him. I get that it’s the way of things with SV startup interviewers, but I feel like that mindset has infected even the most staid companies that have a handful of developers on staff

ɥɯ ︵ (°□°) (mh), Wednesday, 25 September 2024 13:04 (one month ago) link

I guess I'm lucky that I started in this career when web development was just taking off, but I've been a developer for over 25 years, I have no formal IT qualifications, I've read maybe one comp sci book cover to cover, I do no development outsde of work hours (i used to do some, not much) and have never been been to (or had any desire ro go to) a conference.

The flip side is that the tech stack at the company I've been with for nine years is old hat and I probably would find it hard to get a new job, if I wanted, without some upskilling.

a mysterious, repulsive form of energy that permeates the universe (ledge), Wednesday, 25 September 2024 13:30 (one month ago) link

Tech companies may prefer those types of devs, but I think most places just care if you can do the job. I did some portfolio projects when I was trying to move from teaching back to software, but I never did a thing with software in my spare time when I was (and now again am) a dev.

I will say though, in interviews, everyone asked me whether I'd worked on any recent projects since I'd been out of software so long, and I pointed to my portfolio projects. But I don't think they need to be complex or anything, nobody is gonna pore over your Github

Vinnie, Wednesday, 25 September 2024 14:35 (one month ago) link

thanks, all. this is reassuring

brimstead, Wednesday, 25 September 2024 14:59 (one month ago) link

I can't tell sometimes if interviewees are hesitant to voice things in a more opinionated way because they're afraid their answer will disqualify them or if they genuinely don't think about certain things.

"I see you've used library A and library B on different projects. What do you feel are the advantages of each of those, and were you involved in picking which to use?"

Getting "I just used what the project lead told me to use" has come up a few times. I don't want an insanely detailed programmer holy war style answer, but I feel like I'm trying to do a voight-kampff test sometimes trying to drag any qualitative answers out of people. Another one would be, "What feature do you wish this thing you used had?"

Are other companies just insanely dry in their questioning? I can't tell if I'm asking things that are completely out of the norm

ɥɯ ︵ (°□°) (mh), Wednesday, 25 September 2024 15:19 (one month ago) link

My main takeaway from interviews over the last 6 months has been a lot of focus on "Competency Framework" questions, looking for examples of disagreeing with colleagues, dealing with "stakeholders", how and where I shaped the direction of a project, how I ensure whether code is sufficiently tested, how do I choose which items in a sprint to do first. People are really into it

Tow Law City (cherry blossom), Wednesday, 25 September 2024 15:24 (one month ago) link

I've never really done formal interviews before though, this is first time around at that

Tow Law City (cherry blossom), Wednesday, 25 September 2024 15:25 (one month ago) link

I know the market doesn’t support my mindset but honestly the idea that you have to live, breathe, and shit code in order for anyone to deign to give you an interview is the #1 most toxic thing about this industry. Its absolute bullshit and never let anyone convince you otherwise.

― DJP, Tuesday, September 24, 2024 6:04 PM (yesterday) bookmarkflaglink

love this. i hire cloud devops engineers at a very large company. we obviously care about technical skills but i care just as much about--can you navigate an organization, can you approach people and get help, can they approach you and get your help, can you figure out how to do things without handholding? like anyone can code stuff on their own but at enterprise level you don't do anything that is actually impactful on your own.

call all destroyer, Thursday, 26 September 2024 02:13 (one month ago) link

I can't tell sometimes if interviewees are hesitant to voice things in a more opinionated way because they're afraid their answer will disqualify them or if they genuinely don't think about certain things.

"I see you've used library A and library B on different projects. What do you feel are the advantages of each of those, and were you involved in picking which to use?"

Getting "I just used what the project lead told me to use" has come up a few times. I don't want an insanely detailed programmer holy war style answer, but I feel like I'm trying to do a voight-kampff test sometimes trying to drag any qualitative answers out of people. Another one would be, "What feature do you wish this thing you used had?"

Are other companies just insanely dry in their questioning? I can't tell if I'm asking things that are completely out of the norm

― ɥɯ ︵ (°□°) (mh), Wednesday, 25 September 2024 15:19 (yesterday) link

the "I just used what the project lead told me to use" response imho should be considered valid in tech. i came from 10+ years working for a fairly well-oiled engineering firm to a company where churning out product every 6 months is the priority. it is the absolute lawless, wild west and shocks me there is not more government oversight/regulation for it. i spent the past week configuring some next-gen product our company will be putting out with no schematics, software, instructions, etc. and just some daily updated powerpoints some 3rd party tech company overseas had sent over and just a note from the manager to do it.

Western® with Bacon Flavor, Thursday, 26 September 2024 02:53 (one month ago) link

https://www.thebalancemoney.com/what-is-the-star-interview-response-technique-2061629

This seems to crop up quite a bit, I've noticed in a number of interviews the interview steals the questions from here and I steal the answers.

Tow Law City (cherry blossom), Thursday, 26 September 2024 04:22 (one month ago) link

Being a good interviewer is a skill a lot of people conducting the interviews don't have (sour grapes, possibly).

Vincent van Gagh (Leee), Thursday, 26 September 2024 07:16 (one month ago) link

We've started using STAR in our PDPs. Can I say how much I hate PDPs? I don't know or really care where I'll be in five years, or two years. I have no ambition. Can't I just be a developer? Last time my line manager actually mentioned a path to VP of engineering or CTO. If every developer became a CTO that would lead to very top heavy companies.

a mysterious, repulsive form of energy that permeates the universe (ledge), Thursday, 26 September 2024 07:35 (one month ago) link

> the idea that you have to live, breathe, and shit code

the irony is that most of my job is configuration and aws stack changes and 'migrate these 50 components to new distro now they've ruined centos' and not code as such

koogs, Thursday, 26 September 2024 08:47 (one month ago) link

Whats PDP?

I don't mind the STAR stuff since I found it. When I first started going for interviews in May I had no real idea of what was coming or what they were looking for in the answers. Since I found out the questions and answerws are all on the STAR pages I've been able to tailor my answers knowing whats coming, and be pretty conversational.

I'm still not sure what the answer to the disagreeing with a colleague thing is. I think you're supposed to disagree initially and then acquiese but I'm not sure. I'm a bit hazy on the shaping of a project too. Maybe I disagreed with part of a brief and said I disagree and then they say oh good point and we change it to what I said and then everyone cheered

Tow Law City (cherry blossom), Thursday, 26 September 2024 09:00 (one month ago) link

personal development plan?

i am the same with ambition. can you not just be satisfied with how things are?

koogs, Thursday, 26 September 2024 09:02 (one month ago) link

or maybe ledge is working on REALLY legacy systems

https://en.wikipedia.org/wiki/PDP-11

(i think the mini mainframe we had in the corner of the comp sci lab back in 1986 was a pdp. and a vax)

koogs, Thursday, 26 September 2024 09:04 (one month ago) link

personal development plan?

yes. the new name for annual reviews, no longer annual - i have fortnightly meetings about this ffs!

a mysterious, repulsive form of energy that permeates the universe (ledge), Thursday, 26 September 2024 09:04 (one month ago) link

i have 1-2-1s every month and that seems to always be manager asking what i've done towards my 6-monthly written appraisal (the answer is mostly 'not much, been doing tickets', which usually disappoints)

koogs, Thursday, 26 September 2024 09:12 (one month ago) link

This is quite confusing! Why doesn't your manager know what you've been doing? In my previous jobs I think my answer to what have you been doing is I have been doing the things you asked me to do

Tow Law City (cherry blossom), Thursday, 26 September 2024 09:40 (one month ago) link

I've never worked (as a developer) for a company with more than 15 people so maybe its different in the real world

Tow Law City (cherry blossom), Thursday, 26 September 2024 09:42 (one month ago) link

> Why doesn't your manager know what you've been doing?

yeah, you'd think.

we also have a monthly team meeting where we tell everybody what we've done in the last month despite having daily meetings where we tell everybody what we are doing.

you get the feeling that the manager does these things to look like he's doing something.

koogs, Thursday, 26 September 2024 10:06 (one month ago) link

this stuff is definitely way more common in larger companies, when we had 12 employees there was almost no process, now we have over 100 and it's all pdps, one-on-ones, standups, refinement sessions, planning, retrospectives... i can absolutely see the need for... *some* of it.

a mysterious, repulsive form of energy that permeates the universe (ledge), Thursday, 26 September 2024 10:21 (one month ago) link

so far TODAY we've had

a: 10 min standup (daily)
b: 45 minutes engineering (monthly)
c: 1 hour retro (3-weekly)

koogs, Thursday, 26 September 2024 11:19 (one month ago) link

we have two week sprints, which usually include refinement, planning, retro, and stand ups. that basically adds up to a full day, and I only work 4 days a week so that's 12.5% of my capacity gone by default.

a mysterious, repulsive form of energy that permeates the universe (ledge), Thursday, 26 September 2024 12:56 (one month ago) link

I have no ambition. Can't I just be a developer?

This is me as well. I enjoy my work enough that I don't really mind doing it, but it's still just work to pay the bills and my life doesn't revolve around my "career". I'd like to be paid more sure, but I don't want to go into management which is seemingly the only thing people mean by career advancement.

silverfish, Thursday, 26 September 2024 13:29 (one month ago) link

My company just announced an individual contributor track that parallels the management track and my overwhelming response is “where was all of this 15 years ago when I had strong opinions about my career”

At this point I can do either so I’m mostly like “which one gives me the most money for the least amount of work” which is why I’m suddenly interested in management

DJP, Thursday, 26 September 2024 13:33 (one month ago) link

i think i could probably come up with decent efforts at the reasonings behind all these unfathomable org/manager behaviours and questions but id only be outing myself as one of those bloody mananger types (absolutely valid ofc)

tuah dé danann (darraghmac), Thursday, 26 September 2024 13:55 (one month ago) link

My company just announced an individual contributor track that parallels the management track and my overwhelming response is “where was all of this 15 years ago when I had strong opinions about my career”

There has to be some sort of business practices consultancy or literature published by one about this that's driving it, because I heard some time ago that this was in the works, and now it's in the official job grade/responsibilities documentation. I have yet to see any evidence it exists in practice. I think domain architects might be among the few in my department.
(I'm in a R&D organization, with a large supporting IT presence, and the "domains" roughly map to specific business functions, whether those are product-oriented or regulatory/compliance type of things)

ɥɯ ︵ (°□°) (mh), Thursday, 26 September 2024 14:37 (one month ago) link

This is what the kids want these days b/c they grew up on tracks with goals, unlike, say, me.

j.o.h.n. in evanston (john. a resident of chicago.), Thursday, 26 September 2024 15:13 (one month ago) link

two weeks pass...

Team 1: oh, you'll need us to make you a new resource, please raise a ticket and supply details

us: ok, there you go, let us know when it's ready to use

Team 1: ok, it's there

Team 2: why aren't you using your new resource, it's costing money?

us: ok, we'll do the switch over tomorrow if that's ok

Team 1: please raise a ticket for change of use of your resource...

i mean i see the point, we've been hit a couple of times by people suddenly doubling their requests to our systems without warning (or doing it to them), but...

worse, we tried this 3 months ago using the original resource they'd ok'd but which was massively undersized, had to revert about 3 hours of deploying (which took another 3 hours)

koogs, Wednesday, 16 October 2024 16:38 (two weeks ago) link

Anyone here work on fiber-optic networking? Just had a relatively complex (and possibly poorly put together) fiber network dumped on me to suss out and am looking for some basics on best practices, etc.

Elvis Telecom, Saturday, 26 October 2024 19:02 (one week ago) link

praying for you https://sschueller.github.io/posts/wiring-a-home-with-fiber/

𝔠𝔞𝔢𝔨 (caek), Saturday, 26 October 2024 19:25 (one week ago) link

thanks!

Elvis Telecom, Sunday, 27 October 2024 03:23 (one week ago) link

No personal experience to be clear. I just bookmarked that a while back in case I ever went insane and wanted to install fiber

𝔠𝔞𝔢𝔨 (caek), Sunday, 27 October 2024 13:52 (one week ago) link

Right now I just need to tread water with the jargon and not sound totally ignorant in a discussion about fiber modes, wireless links to remote security cameras (low frame-rate, but 4K), redundancy and what-ifs w.r.t. network prioritization and power outages. I'm earning the Telecom part of the name

Elvis Telecom, Tuesday, 29 October 2024 05:36 (one week ago) link

the new hires are making noise about automated code formatting and linting tools. i am agin them. i never met a formatter that did a job i'm completely happy with. and the linting tools are all just somebody else's idea of good code. i mean it's ok when they are finding unused variables but they tend to get religious too quickly. (this is java. we use rubocop for ruby linting and everybody hates it and yet...)

koogs, Friday, 1 November 2024 11:11 (four days ago) link

(also noises about using co-pilot, but i enjoy writing code, it's the rest of the crap i don't like)

koogs, Friday, 1 November 2024 11:12 (four days ago) link

I post these when people go on about co-pilot. Doesn't make any difference of course.

This is insane. The Taiwanese government is paying farmers to NOT grow rice because they need the water for AI chip manufacturing instead. We're prioritizing AI over feeding people during a drought. https://t.co/Jd3qieucUT pic.twitter.com/dchH1CvT0U

— Reid Southen (@Rahll) July 22, 2024

https://www.npr.org/2024/07/12/g-s1-9545/ai-brings-soaring-emissions-for-google-and-microsoft-a-major-contributor-to-climate-change

french cricket in the usa (ledge), Friday, 1 November 2024 11:54 (four days ago) link

linting kind of annoys me, i've never seen formatting so bad that it's a barrier to understanding so it seems like yet another unnecessary hoop to jump through.

french cricket in the usa (ledge), Friday, 1 November 2024 11:57 (four days ago) link

Oh man, I would like to show you the code I’ve been looking at over the past year that has been around for 15+ years and ask if you feel like linters/formatters are a bad idea

Indentation follows no pattern, sections are wholesale copy/pasted from one spot into another, none of the variable names make sense, variables are initialized with values that are never used, others are declared but never used, classes with identical names live in identical packages in different dependencies used by the same application… it is a wholesale disaster

DJP, Friday, 1 November 2024 12:07 (four days ago) link

New BA on her second project where the first suffered from hazy/malleable requirements/testing oversights wrote user stories for our upcoming navigation project, the bulk of which is a horizontal menu with a flyout on hover for each section. There’s a user story for each of the four menu items, for each of the two languages we support, and so far only the desktop user stories- I assume there are 16 more coming down the pipe to cover mobile and tablet.

I get what she’s doing for testing but what a nightmare trying to build under these user stories! It’s a CMS and the menu links are added by users. She refuses to get that we’re just building components. So bizarre.

she started dancing to that (Finefinemusic), Friday, 1 November 2024 12:50 (four days ago) link

> variables are initialized with values that are never used, others are declared but never used

see a linter (or just a good ide) is handy for this stuff.

it's when it starts saying 'this could be a lambda function' or 'use Optional' or, as rubocop does 'this method is too long. should be < 15 lines' is when my hackles rise.

there is a mandatory 'Gen AI' course that i have been assigned, but there's a 2 month deadline on that and i'm hoping it starts to not be a thing in the remaining time.

koogs, Friday, 1 November 2024 13:07 (four days ago) link

What an opionionated, mostly unconfigurable, formatter like Prettier is great at is getting rid of nitpicks around formatting in code-reviews, and also avoiding you spending mental overhead on putting your spacing/returns in a consisitent place.

Chewshabadoo, Friday, 1 November 2024 13:19 (four days ago) link

Yeah we added a formatter to the basic maven build, and as a failing step in the Pull Request build. I don't agree with all the choices, but it does make figuring out "which of these is the change?" easier.

Andrew Farrell, Friday, 1 November 2024 20:04 (four days ago) link

i am a very strong proponent for automated formatters with their default settings, despite being someone who takes a lot of care with intentional indentation and formatting in my own stuff. the hierarchy of code style pretty much boils down to: mine > formatter's >>>>>>>>> everyone else's

no one is going to be completely satisfied with the formatter, but it's going to be far better than whatever the other devs are advocating for (yikes). then, going with the default settings just prevents the endless bikeshedding

diamonddave​85 (diamonddave85), Saturday, 2 November 2024 16:01 (three days ago) link

the problem we had previously is that eclipse, netbeans, visual studio code and intellij all had their own ideas about standards. but the only thing we've mandated so far, and written config for, is the ordering of imports as that was the thing that would change erratically between commits depending on ide. and was just adding noise to every review.

the one thing that jumps out at me in the new suggestions is the max line length being bumped to 130 characters. i hate having to horizontally scroll to see all the code.

koogs, Saturday, 2 November 2024 16:21 (three days ago) link

(vertical scroll is fine, mouse wheels exist for a reason)

koogs, Saturday, 2 November 2024 16:22 (three days ago) link

130 is probably excessive, but everyone needs a Logitech MX Master. Horizontal scroll, baby

ɥɯ ︵ (°□°) (mh), Saturday, 2 November 2024 18:07 (three days ago) link


You must be logged in to post. Please either login here, or if you are not registered, you may register here.