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.
 
  • Locked thread
The Management
Jan 2, 2010

sup, bitch?

ShadowHawk posted:

If you're a bad programmer don't worry, there's plenty of really bad software that needs to be written for specific non-pure-tech industries. Even if "enterprise" software already exists for them, it's pretty much universally bad and your terrible programming has a good chance of being much better.


Also you'll make more money than a "real" developer.

How much does a "real" developer make and how much does a bad one? I need to know what kind I am.

Adbot
ADBOT LOVES YOU

The Management
Jan 2, 2010

sup, bitch?
A pointer is just an address of some memory. Memory is what you make if it. I hope that makes it clear.

The Management
Jan 2, 2010

sup, bitch?
So what does the future hold for our terrible programmer? Job out of college at some boring company dumb enough to hire you. Maintaining bad internal business apps. Never getting the time to work on making things better internally so that you're always stuck maintaining poo poo code. Being annoyed at your management because they don't know anything about software and will literally believe anything a sales rep says. Browsing the web and Facebook and yosposting out of boredom/resentment and barely doing any work (nobody notices the difference). Hating computers and your stupid colleagues. Dealing with outsourced developers that are so bad that you have to be their tester just to make sure things get done. Picking a fight with the CJs over server access or deployment or something else they're bad at. Reading some development books/sites, subsequent anger that your company does none of the things you view as "good". Getting laid off or quitting in disgust, continue cycle at new company. Becoming the bitter old guy by 28. Watching porn at work. Getting lousy raises based on things out of your control. Finding excuses to walk by the new receptionist's desk. Drinking at lunch. Becoming a manager, dying inside.

Why do all this when you can kill yourself now?

The Management
Jan 2, 2010

sup, bitch?

Tiny Bug Child posted:

sounds like your job sucks, the only thing here that applies to me is "watching porn at work"

I'm actually a great programmer so none of that applies to me

The Management
Jan 2, 2010

sup, bitch?
I was trying to save you a lifetime of agony, I don't see how I could be any more kind.

The Management
Jan 2, 2010

sup, bitch?

Bloody posted:

actually, concurrency is easy and you should be able to handle it

concurrency is one of those things that separates the good programmers from the bad ones. I'd rather have people admit that they are not good at concurrency and hand it over to someone that knows how to do it right.

The Management
Jan 2, 2010

sup, bitch?

fleshweasel posted:

if you don't know how to do concurrency you should learn. read a loving book if you have to. have your coworker who does know review your code or work with you. it's not this exceptionally hard thing especially if your language offers constructs for doing it nicely. if you're writing a scheduler for an OS, sure, not everyone can specialize that much. but concurrency is too fundamental a thing to skip out on and is necessary for even relatively simple programs to work nicely.

if you are a bad programmer you should learn to be a good programmer

The Management
Jan 2, 2010

sup, bitch?

suffix posted:

incoherent cache, reordered reads/writes

what level are we talking about here because almost nobody knows this.

The Management
Jan 2, 2010

sup, bitch?

eschaton posted:

4. you probably don't need to use any low-level constructs yourself, leave that for the implementors of the high-level constructs. really. this includes atomic operations, barriers, volatile, etc.

I'm going to upgrade this to don't ever do this, because you don't actually understand the platform as well as you think you do.

Adbot
ADBOT LOVES YOU

The Management
Jan 2, 2010

sup, bitch?

Jabor posted:

writing concurrent code is easy, just do the python method and have a single lock around all the code that shares anything with each other. it's not even that big of a performance issue if the amount of time spent doing that is small compared to the other work a thread does. an example of correct & safe (though not optimal) concurrent code:

code:

Butt getButt() {
  synchronized(this) {
    if (this.butt == null) {
      this.butt = makeButt();
    }
    return this.butt;
  }
}

it's once you start trying to be "clever" with concurrency that you gently caress things up.

Python is literal poop at concurrency. it gets slower and accomplishes less work with each thread you add. it is really very bad.

  • Locked thread