Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Vinterstum
Jul 30, 2003

In another blog post he talks about how he made a program that measures keystrokes per minute, and made all the coders on his team install it. So he can... monitor their productivity.


Oh God.

quote:

Yes! It works wonders. With attention drift practically eliminated, our code base has doubled in just the few months we've been running with this setup!

Measuring progress by the lines of code produced is an AWESOME idea, surely! :psyduck:

Adbot
ADBOT LOVES YOU

Qwertycoatl
Dec 31, 2008

It must be a parody.

Please, let it be a parody.

Dessert Rose
May 17, 2004

awoken in control of a lucid deep dream...

Qwertycoatl posted:

It must be a parody.

Please, let it be a parody.

Does Poe's Law apply to programming? :ohdear:

Qwertycoatl
Dec 31, 2008

How I landed a high-paying new job

quote:

If applicable, flirt heavily with whomever is receiving the application - getting someone on your good side can only help you.

Dessert Rose
May 17, 2004

awoken in control of a lucid deep dream...

Oh dear god.

quote:

I also memorized the current "hot words" in cryptology in the evenings, and reimplemented the "rot thirteen" cipher a million times until I could write the C# code blindfolded, doing my best to stay sharp.

quote:

A command line gui? What is this, the 1970-ies?

(it turns out to be a Caesar cipher)

quote:

This is just a less general version of my Rot Thirteen cipher! I was in luck. After quickly typing in the memorized code, I had about an hour to figure out how to get the blooming thing to work in a terminal and add some polish. I got time to add some XML in there and even add a few design patterns.

:psyboom:

There is no way this is real. I refuse to believe it.

Nippashish
Nov 2, 2005

Let me see you dance!
This post shows you how to make a cheap, efficient and secure random number generator

quote:

Example data with linear patterns is proven to be hard to understand for most users. Going for a full random number generator is not good either, because since it produces random results, there is no easy way to re-run the exact same tests when you see a problem. Solution: The Real Number Generator.

dark_panda
Oct 25, 2004

Ryouga Inverse posted:

:psyboom:

There is no way this is real. I refuse to believe it.

Definitely a joke. The entire blog is hilariously bad so yeah, definitely a joke. I just wish there were more comments in the comments sections from people taking the bait.

1337JiveTurkey
Feb 17, 2005

dark_panda posted:

Definitely a joke. The entire blog is hilariously bad so yeah, definitely a joke. I just wish there were more comments in the comments sections from people taking the bait.

The one thing that makes me think it's real is that "Reinvent the Wheel with Ground-up Teleporters" is practically a design pattern.

dark_panda
Oct 25, 2004

1337JiveTurkey posted:

The one thing that makes me think it's real is that "Reinvent the Wheel with Ground-up Teleporters" is practically a design pattern.

Nah, it's just too good to be real. I mean, it hits all the right notes so well:

- the code is so incredibly bad that it's nearly perfectly bad. I mean, commenting on every line of code needlessly, ridiculous over-complications, a feeling that one is paid-by-the-byte. It's the kind of code a suit would like, basically.

- not getting someone's joke about ROT26...

- using like 4 design patterns, XML, and two hours to write a Caesar cipher while making appear to be very modern (it uses XML and C#!!!)...

- the complete cluelessness combined with a complete ignorance of said cluenessness, further combined with the rampant self-aggrandizing and the constant feeling that the author is just on the cusp of actually learning something that could potentially be useful in any way...

It's a rather good parody of the all-too common useless developers blogs that litter the blogosphere.

Forzan
Mar 15, 2002

by Ozmaugh
After reading other entries in his blog, I feel pretty foolish for leaving a comment. This is definitely a parody.

1337JiveTurkey
Feb 17, 2005

dark_panda posted:

Nah, it's just too good to be real. I mean, it hits all the right notes so well:

I'm sort of used to seeing Verner cyphers using a plain old PRNG, home-cooked reference counting in Java to 'help' the GC, code generation driven by a >300kB .xsl file and a CVS repository with nightly branches and tags for major code branches. There is literally no code so utterly perverse in its design or implementation that I couldn't believe it's real but you're right that the density of the idiocy pretty much had to be by design. At least I hope so, since I'd hate to think that there's production code out there written by someone who thinks that using 20 MB to store an interned string is a great way to save memory.

RedZone
Dec 6, 2005

http://cspangled.blogspot.com/2010/04/real-number-generator.html

Subsection title posted:

A cheap, efficient and secure random number generator.

Content posted:

I know you - a well-educated programmer - will probably be able to guess the nature of this sequence and start predicting the next number, but remember that the person who will end up using your software is a normal human being that first off likely doesn't have your math skills, and most importantly have no interest in analyzing seemingly random numbers! To your users it will be random, and your users are what should matter. Countless old and wise developers constantly urge us to think like a user. Let us take their advice.

Sounds secure to me! This blog must be a joke.

fryzoy
Sep 21, 2005
What.
The best part of that article is where he counts real numbers and claims to reach every number through diagonalization.

dancavallaro
Sep 10, 2006
My title sucks
At first I thought that was way too spot-on to be real, but I'm honestly not so sure anymore. In his post about "landing a high-paying new job", he mentions and links to a post he made on Reddit (http://www.reddit.com/r/programming/comments/c2lcy/ask_proggit_any_excellent_beginner_books_on_crypto), where he asks about books that will help him learn crypto without delving into "overly complex" topics like rainbow tables and ciphers (what the christ?). And the post on Reddit seems pretty real, it's a pretty typical "asking for help" post with a healthy dose of stupid on top. If this guy is faking it, he's doing a really loving good job.

Ochowie
Nov 9, 2007

quote:

I was lucky here, as the HR lady was obviously impressed by my shark tooth ear studs.

quote:

I had a couple of days to prepare for this, so I had time to hit the sun parlor a few times and even found the time to get my teeth bleached.

This has to be fake. I mean I know I hire people based on how tan they are and by the quality of their ear studs.

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

dancavallaro posted:

At first I thought that was way too spot-on to be real, but I'm honestly not so sure anymore. In his post about "landing a high-paying new job", he mentions and links to a post he made on Reddit (http://www.reddit.com/r/programming/comments/c2lcy/ask_proggit_any_excellent_beginner_books_on_crypto), where he asks about books that will help him learn crypto without delving into "overly complex" topics like rainbow tables and ciphers (what the christ?). And the post on Reddit seems pretty real, it's a pretty typical "asking for help" post with a healthy dose of stupid on top. If this guy is faking it, he's doing a really loving good job.

That doesn't demonstrate that he's for real. He could equally be trolling or trying to drum up more visitors for his blog while remaining in character.

dancavallaro
Sep 10, 2006
My title sucks

Hammerite posted:

That doesn't demonstrate that he's for real. He could equally be trolling or trying to drum up more visitors for his blog while remaining in character.

I know it doesn't prove he's for real, but it does prove that if he's trolling, he's doing a drat thorough job of it.

qntm
Jun 17, 2009
This, then, could be a variant upon Poe's Law?

Contra Duck
Nov 4, 2004

#1 DAD
The whole thing is a troll and it's brilliant.

Destroyenator
Dec 27, 2004

Don't ask me lady, I live in beer
I'm voting parody. My favourite bit:
code:
if (i > int.MaxValue) throw new OverflowException("int too big!");

Mustach
Mar 2, 2003

In this long line, there's been some real strange genes. You've got 'em all, with some extras thrown in.
I see he took a play out of the PHP handbook there.

king_kilr
May 25, 2007
Not sure how to describe the coding horrors I've seen, but I'm consulting on a legal case, and jesus christ. <redacted>'s source code is a loving cluster gently caress, the core of the application is inside some shared library that thye don't even have the source for.

king_kilr
May 25, 2007
Jesus christ my office just coding horror'd me. Normally I *love* the guys I work with, I read this thread and think "thank god my coworkers don't do this poo poo". I was out of the office today, I get back and a) all my tests are failing, b) there's duplicated functionality, c) they've got copy-paste of themselves. Did someone replace my coworkers with idiots?

HFX
Nov 29, 2004

king_kilr posted:

Jesus christ my office just coding horror'd me. Normally I *love* the guys I work with, I read this thread and think "thank god my coworkers don't do this poo poo". I was out of the office today, I get back and a) all my tests are failing, b) there's duplicated functionality, c) they've got copy-paste of themselves. Did someone replace my coworkers with idiots?

It's the reptilian replacement system. They are keeping an eye on you.

bolind
Jun 19, 2005



Pillbug
Oh, a thread where I can vent a little - just what I need.

I've been spending the day enhancing some code a colleague of mine has written. Now, he's way more senior than me, can get insanely complex stuff to work, is really, really good at C and embedded development in general, he's just... stubborn? old-fashioned? Remember how the saying goes, "Laziness is a virtue in any programmer"? It's like he's the exact opposite. I've never heard him chuckle over a cool hack or being excited about some new technology...

A few examples:

Variable names all over the place. HumpCase, lower_case_with_underscore, you name it.

Is horrible at english so the (few) comments and even variable names are difficult to understand at best. The width and height of a character in a font were named FontSize and character_width respectively.

NEVER uses a curly bracket if he can avoid it. So:
code:
for (blahblah)
    for (moreblah)
        if (foo)
        {
            20 lines of stuff...
        }
LOVES the ? : construct, as well as multiple assignments (foo = bar = blah).

Insists on using windows (and especially the windows command prompt), even though both our development platform and our products run Linux. A Unix shell is a foreign and heathen thing.

Types slowly but hard with two index fingers while muttering commands/code to himself...

TOO SCSI FOR MY CAT
Oct 12, 2008

this is what happens when you take UI design away from engineers and give it to a bunch of hipster art student "designers"
Came in this morning to find some of my tests failing. Turns out some guy two org-chart levels above me decided to change a constant without testing it first. Didn't even update the comment explaining its size :effort:

code:
// Remote buffer stored as 8 chunks of 32, minus 1 for NUL; maximum size is (32*8)-1 bytes
static const unsigned int REMOTE_PAYLOAD_BUFFER_MAX = 223;
This same guy hates using mutexes in multi-threaded code, for performance reasons.

tef
May 30, 2004

-> some l-system crap ->
they're called race conditons because they make the code go faster :eng99:

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

tef posted:

they're called race conditons because they make the code go faster :eng99:

what you need here is a big red stripe!! and maybe a chevron

Crazy RRRussian
Mar 5, 2010

by Fistgrrl
I have seen a lot of times people over use locks when they could safely avoid them. Of course you want to use proper synchronization to avoid race conditions, but also it is true that for optimization purposes it is good to go back and decide if you really need to be using synchronization here or there, and if what is the easiest way to modify code to avoid it, if that is possible.

spiritual bypass
Feb 19, 2008

Grimey Drawer
Who has time to go back and look at code to decide if it's fast enough? I have never been in a situation where I wasn't getting hounded for some new dumb feature before the last one was even done.

TOO SCSI FOR MY CAT
Oct 12, 2008

this is what happens when you take UI design away from engineers and give it to a bunch of hipster art student "designers"

tef posted:

they're called race conditons because they make the code go faster :eng99:

I'm gonna print this out and frame it

Crazy RRRussian
Mar 5, 2010

by Fistgrrl

rt4 posted:

Who has time to go back and look at code to decide if it's fast enough? I have never been in a situation where I wasn't getting hounded for some new dumb feature before the last one was even done.

Depends on the type of project of course. Sometimes a new feature or requirment is making poo poo faster.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



tef posted:

they're called race conditons because they make the code go faster :eng99:

If you think about it, crashing is very performant: minimal use of system resources

edit: oh wait gently caress it could deadlock

Munkeymon fucked around with this message at 21:38 on Jul 8, 2010

Sweeper
Nov 29, 2007
The Joe Buck of Posting
Dinosaur Gum

Munkeymon posted:

If you think about it, crashing is very performant: minimal use of system resources

You don't even need to watch memory usage, it quits before it takes too much!

WangNinja
Apr 5, 2006

code:
Jacked It Up
code:
INSERT INTO 
	ScoringEntry  
(
	projectid, 
	type, 
	questionid, 
	answerid, 
	AgencyMarketingInd
) 
SELECT  
	@servID, 
	'S', 
	@q1QuestionID, 
	@q1AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q2QuestionID, 
	@q2AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q3QuestionID, 
	@q3AnswerID, 
	@AgencyMarketingInd
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q4QuestionID, 
	@q4AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q5QuestionID, 
	@q5AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q6QuestionID, 
	@q6AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q7QuestionID, 
	@q7AnswerID, 
	@AgencyMarketingInd

Lysandus
Jun 21, 2010

WangNinja posted:

code:
INSERT INTO 
	ScoringEntry  
(
	projectid, 
	type, 
	questionid, 
	answerid, 
	AgencyMarketingInd
) 
SELECT  
	@servID, 
	'S', 
	@q1QuestionID, 
	@q1AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q2QuestionID, 
	@q2AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q3QuestionID, 
	@q3AnswerID, 
	@AgencyMarketingInd
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q4QuestionID, 
	@q4AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q5QuestionID, 
	@q5AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q6QuestionID, 
	@q6AnswerID, 
	@AgencyMarketingInd 
UNION ALL 
SELECT  
	@servID, 
	'S', 
	@q7QuestionID, 
	@q7AnswerID, 
	@AgencyMarketingInd

My sql isn't that great, but it looks to me like every question and answer has its own column, which physically made me lol.

WangNinja
Apr 5, 2006

code:
Jacked It Up

Lysandus posted:

My sql isn't that great, but it looks to me like every question and answer has its own column, which physically made me lol.

It's not that horrible (although I've seen that before :negative: ). The ScoringEntry table holds responses to quizzes for various projects. The ASP.NET page uses (as a SQL string literal) the quoted code to create a SqlCommand object, then makes 16 function calls to add parameters to the object: 7 for the questions, 7 for their answers, then the project ID and some extraneous field.

So every quiz HAS to be exactly 7 questions long, and the responses all get inserted in one awesome batch that utilizes UNION ALL on the parameters!

I hate inheriting code projects from remote zones :eng99: . At least we can verbally assault one another in the local office when this poo poo happens.

Factor Mystic
Mar 20, 2006

Baby's First Post-Apocalyptic Fiction
Why not execute it in a loop as a single dynamic sql statement that uses string concatenation to specify the correct variable



:ughh:
:negative:
:suicide:

w00tz0r
Aug 10, 2006

I'm just so god damn happy.
I'm working at a new job doing C++ development, and I think I'm going to tear my hair out.

I can't think of a single class that's defined in .h and .cpp files of the same name as the class. Most of the time they're at least vaguely related, but not always. Dependencies are handled by a single "includes.h" file that contains everything that is needed for any file anywhere and is approximately 400 lines long.

The program is also dependant on about a thousand global variables, and every one of the 1400 line long functions have side effects that aren't documented, which makes following program flow near impossible.

Adbot
ADBOT LOVES YOU

Brecht
Nov 7, 2009

w00tz0r posted:

I'm working at a new job doing C++ development, and I think I'm going to tear my hair out.

I can't think of a single class that's defined in .h and .cpp files of the same name as the class. Most of the time they're at least vaguely related, but not always.
Well that's not such a big dea—

w00tz0r posted:

Dependencies are handled by a single "includes.h" file that contains everything that is needed for any file anywhere and is approximately 400 lines long.

The program is also dependant on about a thousand global variables, and every one of the 1400 line long functions have side effects that aren't documented, which makes following program flow near impossible.
–oh :(

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply