×

Announcing: Slashdot Deals - Explore geek apps, games, gadgets and more. (what is this?)

Thank you!

We are sorry to see you leave - Beta is different and we value the time you took to try it out. Before you decide to go, please take a look at some value-adds for Beta and learn more about it. Thank you for reading Slashdot, and for making the site better!

Lies Programmers Tell Themselves

Soulskill posted about 9 months ago | from the i'll-just-browse-the-internet-while-this-compiles dept.

Programming 452

itwbennett writes "Everybody lies to themselves now and again in both their personal lives ('my bathroom scale probably needs to be recalibrated') and professional lives ('this code doesn't need commenting'). ITworld has compiled some of the common lies programmers tell themselves. Here are a few examples: 'This bug won't take long to fix.' 'No one could possibly fail to understand my simple user interface.' 'Code is self documenting.' 'My homebrew framework will be nimble, lightweight, debugged, and easy to use.' 'I know this is dirty code, I will rewrite it later.' 'It's just one line... it won't break anything.' '"It works on my machine.' 'I don't need version control.' 'It's written in ____, so it'll be easy to ____.' What would you add to this list?"

Sorry! There are no comments related to the filter you selected.

Hofstadter's Law (5, Insightful)

Kensai7 (1005287) | about 9 months ago | (#46484491)

"It always takes longer than you expect, even when you take into account Hofstadter's law."

Re:Hofstadter's Law (5, Funny)

arkhan_jg (618674) | about 9 months ago | (#46484795)

"I'll just fix this quick and dirty for now, management will allow me time to redo it properly later."

Lame (5, Interesting)

Anonymous Coward | about 9 months ago | (#46484499)

Most of these are obvious and well understood.

Some (slightly less obvious) ones:
- Something must be wrong with this library (that is used successfully by everyone else)
- Theoretically two threads could try to change that variable at the same time, but it’ll never actually happen
- Just about anything starting with "no one will ever"
- Anyone who wants to use this class will look at the code / documentation and see that they can't actually use it in that (usually intuitive) manner.

Also can we please stop posting articles from itworld. They are all the same: tiny bits of content split over a ridiculous number of pages to maximize ad revenue.

Seriously, this is like 1990s levels of ad spamming. First you have the full window click through ad, then you have ads on every 10 word slide, a click through in the middle of the slides, and then just for good measure the last slide isn’t a content slide but yet another ad!

I feel like I need 10 levels of toolbars and bonzo-buddy running in the background to really appreciate the experience of this site.

Re:Lame (2, Informative)

mbone (558574) | about 9 months ago | (#46484625)

Also can we please stop posting articles from itworld. They are all the same: tiny bits of content split over a ridiculous number of pages to maximize ad revenue.

Seriously, this is like 1990s levels of ad spamming. First you have the full window click through ad, then you have ads on every 10 word slide, a click through in the middle of the slides, and then just for good measure the last slide isn’t a content slide but yet another ad!

I feel like I need 10 levels of toolbars and bonzo-buddy running in the background to really appreciate the experience of this site.

This

I generally just don't click through anything that doesn't provide the article (picture, whatever) in the original link. When, for some reason (as with this article) I do, I generally feel (as with this article) cheated.

Re:Lame (-1)

Anonymous Coward | about 9 months ago | (#46484647)

Yeah! FUCK BE ... uhh .. ummm. Fuck ITWorld?

Re:Lame (2)

Kremmy (793693) | about 9 months ago | (#46484855)

Ad-blockers are partially responsible for this, in that the ad blocker will make it so the person posting the article does not see that it is a haiku etched into a marble against a backdrop of advertisements.

Re:Lame (2)

sjames (1099) | about 9 months ago | (#46484909)

Let's not forget "This program will be revised/replaced long before that becomes an issue".

This job is only temporary. (4, Funny)

AioKits (1235070) | about 9 months ago | (#46484519)

My personal favorite! *sigh* Oh well.

This job will last a while (2)

ThatsDrDangerToYou (3480047) | about 9 months ago | (#46484765)

Sadly, this is also sometimes true..

See also: this start-up is gonna rock! We'll all be zillionaires!

Re:This job is only temporary. (3, Funny)

K. S. Kyosuke (729550) | about 9 months ago | (#46484923)

"If I learn to write better code, they'll give me a pay raise for certain!"

Re:This job is only temporary. (5, Interesting)

NotDrWho (3543773) | about 9 months ago | (#46485003)

Management says that this patch of 60-hour weeks is just a fluke and once everything is back on track it won't happen again.

Lies (5, Funny)

boundary (1226600) | about 9 months ago | (#46484521)

"My facial hair makes me look interesting and makes up for my lack of social graces."

Re:Lies (5, Informative)

Anonymous Coward | about 9 months ago | (#46484703)

"I don't think anyone will smell this fart."

Re:Lies (0)

Anonymous Coward | about 9 months ago | (#46484993)

smelt it

Re:Lies (1)

Anonymous Coward | about 9 months ago | (#46484747)

Related truth: "My beard provides a good habitat for nesting birds."

Re:Lies (2)

maliqua (1316471) | about 9 months ago | (#46484999)

not only is it stylish it protects me from the harsh Canadian winter

Lie #1 (-1, Troll)

Anonymous Coward | about 9 months ago | (#46484525)

mod parent up (-1)

Anonymous Coward | about 9 months ago | (#46484777)

I can't believe that I see it. really kudos to you to preserve this tradition,

abstract wacky name (3, Insightful)

globaljustin (574257) | about 9 months ago | (#46484529)

"I need to pick wacky, completely abstract name (that have nothing to do with function) for the new thing I made...that's a novel idea that will make it easy for people to remember!!"

ex: Yahoo, whatsapp, tumblr, Gentoo, etc etc

Re:abstract wacky name (5, Interesting)

mrchaotica (681592) | about 9 months ago | (#46484751)

Gentoo is a kind of (species of) penguin, just as Gentoo Linux is a kind of (distribution of) Linux.

look at 'bluetooth' (2, Interesting)

globaljustin (574257) | about 9 months ago | (#46484879)

it's still just as confusing & alienating

Look at Bluetooth's name origin...***technically*** you can see what they were thinking but that doesn't make it any less confusing:

The word "Bluetooth" is an anglicized version of the Scandinavian Blåtand/Blåtann, (Old Norse blátnn) the epithet of the tenth-century king Harald Bluetooth who united dissonant Danish tribes into a single kingdom, according to legend, introducing Christianity as well. The idea of this name was proposed in 1997 by Jim Kardach who developed a system that would allow mobile phones to communicate with computers. At the time of this proposal he was reading Frans Gunnar Bengtsson's historical novel The Long Ships about Vikings and king Harald Bluetooth.[7][8] The implication is that Bluetooth does the same with communications protocols, uniting them into one universal standard

via wiki

It's just too much...

I know that every "wacky abstract name" probably has **some** kind of funny quirky story...that doesn't make it a useful name

Harald Bluetooth, he dead (1)

billstewart (78916) | about 9 months ago | (#46485001)

Bluetooth is dead - Netcraft\\\\\\\
I've seen his tomb - he's buried in Roskilde Cathedral. It's about 30km west of Copenhagen, but you can get there with the Copenhagen city transit pass, and don't need to burn a trip on your railpass. Good museum of Viking ships there, which they'd found sunk in the harbor.

Re:abstract wacky name (1)

hazah (807503) | about 9 months ago | (#46484769)

Ford? Chrysler?

Re: abstract wacky name (3, Informative)

jd2112 (1535857) | about 9 months ago | (#46484857)

Named for their founders, Henry Ford and Walter Chrysler respectively.

Re:abstract wacky name (1)

i.r.id10t (595143) | about 9 months ago | (#46484779)

ex: Yahoo, whatsapp, tumblr, Gentoo, etc etc

Except Gentoo is a species of penguin, so it is at least somewhat relative

Re:abstract wacky name (-1)

Anonymous Coward | about 9 months ago | (#46484885)

Wacky is better than nonsensical like the two Republicans I work with. They name things like:

submitProposedClosedModelRayFiniteOriginEqualsFinishTerminusFuture()

That method sets an end date. They, like the creator of the article, do not think logically. The article was written by a conservative that obviously can't keep more than one thing on his small mind at a time. He is too stupid to be able to put more than one lie on a page which is strange because usually those people are good at keeping-up with lots of lies due to constant training from Faux Knews. I wish I could fire those two developers, but Republicans always whine and sue so it's taking me a while to get my things in order. Both have DUIs and one is a sex offender, like a lot of them are, so I have my excuse

Again, I just don't get why those conservatives can't keep-up with more than one thing at a time.

Re:abstract wacky name (1)

Anonymous Coward | about 9 months ago | (#46484981)

Funny you should mention this, as these days usually all the best names related to the subject/idea/concept are already trademarked/registered/otherwise taken already by someone, somewhere in the world, so chances are the wacky completely abstract names are frequently indeed the best choice.

Number 1 in my experience (5, Funny)

mbone (558574) | about 9 months ago | (#46484533)

I'll document this code once I'm done.

Re:Number 1 in my experience (2, Interesting)

Anonymous Coward | about 9 months ago | (#46484635)

A conditional with a false premise is always true.

"If the code is done, then I will document it." is always true.

https://en.wikipedia.org/wiki/Logical_conditional#Truth_table

Re:Number 1 in my experience (5, Funny)

pr0fessor (1940368) | about 9 months ago | (#46484919)

catch(exception x) { //You've been eaten by a grue. } is error handling.

/* To Whom It May Concern */ (-1)

Anonymous Coward | about 9 months ago | (#46484555)

/* When you go through this spaghetti code I have left you, know that I truly feel sorry for you. */

The new manager will be less of an idiot (3, Funny)

El_Muerte_TDS (592157) | about 9 months ago | (#46484557)

n/a

Re:The new manager will be less of an idiot (0)

Anonymous Coward | about 9 months ago | (#46484903)

What gets me is programmers who think everyone else's code is crap except their own.

Lie 10 (5, Informative)

n1ywb (555767) | about 9 months ago | (#46484563)

Lie 10: itworld.com has interesting, informative, insightful, and meaningful content.

Case in point... (2, Insightful)

Anonymous Coward | about 9 months ago | (#46484565)

"Posting my article as a slideshow is a good idea"

The copiler will optimize this (-1)

Anonymous Coward | about 9 months ago | (#46484567)

"The copiler will optimize this" is a common lie that means that we don't have to check the compiler output.

I would add the following (1)

CheezburgerBrown . (3417019) | about 9 months ago | (#46484577)

Beta Releases
For a more detailed look at what is pushed out in every release - below is a list of changes made in Beta releases recently, listed in chronological order:

Release 02/04/2014
  Sign up
  Basic Profile Update
  Change Password
Release 01/30/2014
  Sign Up
  Filter On Comments
  Forgot Password
Release 11/21/2013
  Addition of a new Career vertical under Slashdot
  Login and profile improvements
  Moderation
  Clean up of Slashboxes
Release 11/07/2013
  Improved readability of story section on the main page
  Updates so that the site can now be viewed without a fixed width issue
  Karma badges now also show next to each submitter on the main page
  Improved footer layout

Terrible Article (4, Insightful)

Anrego (830717) | about 9 months ago | (#46484581)

We arn't beating a dead horse here. We are beating the pink stain on the floor where the horse used to be. While we are at it, lets talk about how shitty airline food is.

My contribution: this is just a prototype to show that this will work, the real version will be implemented properly.

show me code thats not self-documenting (2, Insightful)

Anonymous Coward | about 9 months ago | (#46484583)

with very few exceptions, any documentation that might come with code is completely
trivial and to the extent that it isn't, totally out of date

lets add annotations to the top of functions which merely repeat their signatures

and then run it through a formatter to rip out the bodies

then publish the context-less signatures as an html and pdf

and congratulate ourselves on having well documented code

Commenting code (-1, Troll)

Anonymous Coward | about 9 months ago | (#46484585)

Good code rarely needs commenting though. Too many comments are often an indicator of poorly organized code. This is even taught in SE courses in universities these days.

Re:Commenting code (5, Informative)

PvtVoid (1252388) | about 9 months ago | (#46484639)

Good code rarely needs commenting though. Too many comments are often an indicator of poorly organized code.

Dear person who thinks that "good code rarely needs commenting": the entire world wants to beat you senseless with a nine iron.

You're welcome.

Re:Commenting code (1)

DaveV1.0 (203135) | about 9 months ago | (#46484673)

I would prefer to do with nine irons instead.

Re:Commenting code (0)

Anonymous Coward | about 9 months ago | (#46484871)

Simple code rarely needs commenting. If you have to write some convoluted or non-obvious stuff, then by all means, document. I'm just sick and tired of seeing 'comments' that are simply the paragraph name made into a comment, or state something that is obvious. In my experience, 95% of comments are either useless, or wrong, or both. Most of the time I ignore them.

Re:Commenting code (2)

lgw (121541) | about 9 months ago | (#46484845)

Good code rarely needs commenting though.

This is actually true, but it's not interesting, because the #1 lie programmers tell themselves is "I am writing good code".

And really, it's always worth documenting corner cases, and everything non-trivial has corner cases. Even the somewhat trivial stuff like what a function does on bad input needs documenting, though I'd prefer unit tests to English for that stuff.

The purpose of the function, and the way the parameters are used, is often clear from the names, but the returned value doesn't have a name and is unclear more often than you'd think. But really, is the "remarks section" of the comments that is usually lacking. The summary and parameter documentation is often content-free, but comments about the return value, and especially any other detailed notes are quite valuable.

Re:Commenting code (1)

pr0fessor (1940368) | about 9 months ago | (#46484995)

Good code that rarely needs commented has very few lines. I don't care how good the code is when you get into a huge code base and there are no comments it's a pain.

we'll be greeted as liberators (5, Informative)

lemur3 (997863) | about 9 months ago | (#46484589)

oh uhh lies programmers tell themselves..

how about

this new website design is going to be great, our users will love it!

Re:we'll be greeted as liberators (5, Insightful)

Anrego (830717) | about 9 months ago | (#46484819)

"All our users are complaining bitterly about these changes, but I'm sure once they get used to it they will see we had it right all along."

See also: gnome

Self-assessment (2, Funny)

Anonymous Coward | about 9 months ago | (#46484591)

"I am a good programmer."

Here's one itworld believes: (1)

Anonymous Coward | about 9 months ago | (#46484595)

People prefer slideshows over simple lists.

c/p from the stupid slide show:

1. This code doesn’t need commenting
2. This shouldn’t take long
3. I can do it better myself
4. I’ll fix this later
5. It’s only a small change
6. It’s not a bug
7. I know what I’m doing
8. I can safely skip that test
9. I’m using so we’re good

Ego anyone? (0)

Anonymous Coward | about 9 months ago | (#46484599)

My shit smells like Old Spice.

Cross-platform (1)

AlphaBro (2809233) | about 9 months ago | (#46484623)

It's written in _______ so it'll be cross-platform.

The Whopper (5, Insightful)

American AC in Paris (230456) | about 9 months ago | (#46484629)

"Well if you let the programmers run the show, things would be so much better."

Re:The Whopper (0)

Anonymous Coward | about 9 months ago | (#46484735)

"Well if you let the programmers run the show, things would be so much better."

Beta Slashdot, case in point.

From the support perspective (2, Insightful)

DaveV1.0 (203135) | about 9 months ago | (#46484651)

"I am logging what is needed to trouble shoot a problem."

my experience (0)

Anonymous Coward | about 9 months ago | (#46484671)

code is self documenting? lol, that is funny. the only code that is kinda easy for me to read is Visual Basic 6. even then, complex functions and API calls need documenting. forgot MSVC MFC gah... that code is complex. and don't get me starter with win 32 C.. even after reading Charles Petzold's books I'm still a bit confused as to how to write C programs from scratch. at least I have a book to read. i must be the only person not using Microsoft .Net or Java or some C++ GUI toolkit.

How about the IT-WORLD programmers? (5, Funny)

dmomo (256005) | about 9 months ago | (#46484675)

1) People will enjoy this content more if it's in a slideshows.
2) It's OK if ad-blocking breaks my core javascript functionality.
3) Nobody is going to view this site in a modern browser.

Programming Languages (0)

Anonymous Coward | about 9 months ago | (#46484679)

#9 is why I write everything in C and Perl. I have zero delusions of the programming language saving me from myself.

My job is interesting to other people (1)

SolarStorm (991940) | about 9 months ago | (#46484687)

Believing this while starting in a pale face with glassy eyes, and a small tear while explaining what I did today to my wife

Some ones from our most recent project (3, Insightful)

sandytaru (1158959) | about 9 months ago | (#46484691)

* Changing X will have absolutely no effect on Y since I don't know any place where Y references X.

* I'll just take care of all the small bugs first before tackling this monster deliverable.

* Pulling this code out of the client and putting it into a store procedure won't break anything.

Re:Some ones from our most recent project (1)

DaveV1.0 (203135) | about 9 months ago | (#46484721)

I think we work for the same company.

Part B of your first one (1)

tb()ne (625102) | about 9 months ago | (#46484807)

... and since I need to get the next release out in 10 minutes, I can safely put change X in the release build without testing.

I don't need to worry about security... (3, Interesting)

SwashbucklingCowboy (727629) | about 9 months ago | (#46484709)

I'm behind a firewall

This website (0)

Anonymous Coward | about 9 months ago | (#46484713)

will never crash under load.

Ignore warnings (0)

Anonymous Coward | about 9 months ago | (#46484715)

Compiler warnings can just be ignored.

Another (3, Insightful)

93 Escort Wagon (326346) | about 9 months ago | (#46484723)

As soon as I've finished the main part, I will go back and deal with any sections I've flagged with # TODO

Favorite statement on this topic (4, Funny)

ThatsNotPudding (1045640) | about 9 months ago | (#46484725)

"Screw comments! It was hard to write, it should be hard to read!"

Disposable Code (1)

tb()ne (625102) | about 9 months ago | (#46484729)

I'll never need this code again so there's no need to document it.

If I drink the CEO's Kool-Aid.. (0)

Anonymous Coward | about 9 months ago | (#46484731)

... I will be a millionaire.

blah (-1)

Anonymous Coward | about 9 months ago | (#46484745)

Good code does not need documenting and should not be commented. P.S. this is not a lie.

Should be: Lies Bad Programmers Tell... (1)

whiplashx (837931) | about 9 months ago | (#46484767)

The lies listed in this article are all focused on doing unnecessary cleanup. Real life isn't full of down-time where we can polish everything perfectly. Anywhere you go where there are experienced programmers, you will see they avoid issues by not over-extending themselves. Don't tell yourself your code will be clean if you want it to be fast, or you want to develop it quickly. Don't tell yourself you'll fix it later if you honestly don't NEED to fix it later.

I get annoyed by programmers who get stuck in the weeds. Solve it, and move on.

"I am more talented than average." (0)

Anonymous Coward | about 9 months ago | (#46484773)

About 80% of programmers I have met think this. It is used to justify pretty much everything else, including:

- "I can do this in in a couple of days. I'll forgo sleep."
- "If you don't understand what I am trying to do, you're just stupid."
- "I don't need much experience - I have Google and can learn quickly."
- "We need a programming language with lambda expressions!" - sorry, chump, if you can't write good code in Visual BASIC, I don't want to hire you. I'll never ask you to use Visual BASIC, of course, but whether you /could/ use it pretty much determines whether you're a good programmer or just a buzzword monkey.

Re:"I am more talented than average." (1)

AlphaBro (2809233) | about 9 months ago | (#46484833)

"We need a programming language with lambda expressions!" - sorry, chump, if you can't write good code in Visual BASIC, I don't want to hire you. I'll never ask you to use Visual BASIC, of course, but whether you /could/ use it pretty much determines whether you're a good programmer or just a buzzword monkey.

Who employs you? I want to ensure I never work with you. Actually, never mind. That wouldn't happen.

I'm Neo bitches! (1)

ThatsDrDangerToYou (3480047) | about 9 months ago | (#46484783)

.. just waiting for that cell to ring.

It's very basic (3, Insightful)

portwojc (201398) | about 9 months ago | (#46484789)

It should work in any browser.

Slashdot Devs (0)

Anonymous Coward | about 9 months ago | (#46484793)

"Our users will LOVE our new design. It's awesome!"

Lie #11 (3, Insightful)

EvilSS (557649) | about 9 months ago | (#46484797)

"Users love slide shows!"

How about adding.... (3, Funny)

Anonymous Coward | about 9 months ago | (#46484801)

I have lots of time to get this code done.....I'll catch up on Slashdot's articles......

Fuck'em & Feed'em Fish Heads (1)

zenlessyank (748553) | about 9 months ago | (#46484815)

That's what I always say.

gotta love a site... (2)

YoungManKlaus (2773165) | about 9 months ago | (#46484817)

that does not work _at_all_ if you have a halfway decent content- and tracking-blocker installed

"This code is shit" (4, Insightful)

ralphtheraccoon (582007) | about 9 months ago | (#46484821)

What the ? I can't understand this code straight away without thinking about the problem or why they wrote it this way? It's shit!

Actually, a lot of problems are complex, and there isn't a single straightforward way to implement it. It could be that doing it the obvious way works - up to a certain point, and then the whole thing needs writing in a new totally non-obvious more complex way, in order to cope with x. (latency, bandwidth, text encoding, ACID compliance, European data protection law, occasonal data spikes which make the stack explode if you use a recursive function, certain servers only having python 2.6 on them still, etc. etc. etc.)

It's just... (2)

bradgoodman (964302) | about 9 months ago | (#46484837)

"It's just a temporary solution".

As theold adage says: "There's nothing more permanent that a temporary solution".

Lie #12 (1)

EvilSS (557649) | about 9 months ago | (#46484841)

"I don't need to be knowledgeable in the operating system this will run on!" I'm always shocked about how little many developers, especially Windows developers, actually know about the OS they are writing software for.

RTFM... (1)

Spicerun (551375) | about 9 months ago | (#46484843)

RTFM ... Everything is in the documentation....

Concurrancy and locking (1)

bradgoodman (964302) | about 9 months ago | (#46484847)

We don't need to worry about locking or concurrency - It'll never need to be run on more than one thread/core at a time.

Of course it works (0)

Anonymous Coward | about 9 months ago | (#46484849)

Of course it works. I wrote it!

Of course I looked at it, and judging by the misspellings, the person didn't even attempt to compile it.

"It's just one line... it won't break anything" (1)

neoform (551705) | about 9 months ago | (#46484865)

I say this line often, and I'm usually right.

How is this a lie?

Re:"It's just one line... it won't break anything" (1)

DaveV1.0 (203135) | about 9 months ago | (#46484939)

I say this line often, and I'm usually right.

Every time you said it and it wasn't right, it was a lie you told yourself.

A user will never do that. (1)

jklovanc (1603149) | about 9 months ago | (#46484875)

As a tester my response usually was "I did it and if I can do it so will someone else".

1998 wants its problems back (0)

Drunkulus (920976) | about 9 months ago | (#46484899)

All these issues are irrelevant today, thanks to continuous deployment, Google buses, and node.js.

That I am the most important (0)

Anonymous Coward | about 9 months ago | (#46484929)

That my programming skills and what I am doing are the absolute most important part of this company and this business. Without me (us), this company would not run.

If you don't want to load an html5 slideshow (0)

Anonymous Coward | about 9 months ago | (#46484931)

just to read 9 lines of text, here it is:

This code doesn't need commenting
This shouldn't take long
I can do it better myself
I'll fix this later
It's only a small change
It's not a bug
I know what I'm doing
I can safely skip that test
I'm using <NAME OF FAVORITE PROGRAMMING LANGUAGE HERE> so we're good

It's 2014... (1)

ThatsDrDangerToYou (3480047) | about 9 months ago | (#46484945)

Women dig geeks now.

Doublethink (1)

Warbothong (905464) | about 9 months ago | (#46484947)

"There's no need to use <relevant thing I don't know>, we can throw something together in <irrelevant thing I happen to know>"

"We should use <thing nobody knows> because <it's trendy>"

Tell themselves? (1)

Mozai (3547) | about 9 months ago | (#46484965)

Are you sure these are lies programmers tell themselves? Or lies they believe people wish to hear from them?

It's a hardware problem. (1)

Ihlosi (895663) | about 9 months ago | (#46484971)

The classic.

I'll pull out in time... (0)

Anonymous Coward | about 9 months ago | (#46484977)

... and don't soil the keyboard.

My favorite (1)

Splab (574204) | about 9 months ago | (#46484989)

They will never realize that I have no idea what I'm doing!

My site won't get Slashdotted... (1)

OakDragon (885217) | about 9 months ago | (#46485009)

And if it does, at least that's a good problem to have.

I don't need to comment it (1)

Cro Magnon (467622) | about 9 months ago | (#46485015)

Anyone who knows Cobol/C++/Java/Perl can understand it perfectly.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?