The Joys Of Programming

trueheart78 wrote:

Ok, I want to formally learn C. I've got experience with C++, although that's from 3 semesters in college (circa 2004).

I've always wanted to get closer to the hardware, and after using Linux as much as I have, I'd like to focus on learning it.

Are there any references, whether books, online guides, etc, that can take me deep into the rabbit hole? Something not too try, preferably.

K&R, man. Get it straight from the horse's mouth.

Then, you'll need something that covers the standard library and the latest standard. And, sorry, I don't have any recommendations of good material for picking that up.

kazar wrote:
Minase wrote:

So right off the bat, and I hate to be 'that guy', but there isn't any "talent shortage". There's a talent shortage of people who are willing to work for low pay and not have the ability to leave their job.

All the interviews I gave last year say otherwise. It is shocking how many people have 15 years of experience and can't do simple problems let alone difficult ones. I do grant that the issue isn't local talent vs foriegn talent as I have seen the problem with people on H1Bs just as much as US citizens. I don't think the problem is that these people are not capable. I think it is because companies don't create an environment to foster learning. There is no mentorship program put in place so new software developers can learn from experienced ones. In a sense we are experiencing the movie Idiocracy where the average ability of a software developer is not what it used to be.

Both of these comments are fair.

First let me say that the mentoring staff which is full time is compensated. The Get Involved (and I should clarify this better I suppose) is for local professionals who might want to come speak over lunch, or help out on the side. User groups thrive on the same kind of volunteerism. But your 9-5 every day mentor is compensated.

Second, every single BLS report, and even in Cleveland which isn't exactly new york city has hundreds of unfilled developer positions. Salaries in IT are up 11% year over year because of this shortage. I was formerly a hiring manager and I am connected to dozens of hiring managers, every single one of them agrees that college education is not preparing people to be developers and that what Kazar describes is the norm, "experienced professionals" who can't do anything useful.

As an employer, why would you go out and hire one or two juniors at a loaded cost of > $55,000 /yr (loaded means taxes, benefits, etc included) when they can't do anything yet? You'll spend 6 months teaching them the basics (at the additional overhead cost of the mentor) and then they may or may not work out. Our model accelerates that basic learning, teaches people what they need to know to start building solutions, and the sponsors instead can interview 10-15 candidates and pick the winners. Lower risk, lower cost.

tboon wrote:
trueheart78 wrote:

Ok, I want to formally learn C. I've got experience with C++, although that's from 3 semesters in college (circa 2004).

I've always wanted to get closer to the hardware, and after using Linux as much as I have, I'd like to focus on learning it.

Are there any references, whether books, online guides, etc, that can take me deep into the rabbit hole? Something not too try, preferably.

K&R, man. Get it straight from the horse's mouth.

Then, you'll need something that covers the standard library and the latest standard. And, sorry, I don't have any recommendations of good material for picking that up.

I'll add a book that I can't find on Amazon, but here's the GoodReads page - C in Plain English by Brian Overland.
And the "not available" B&N page.
I treated this book a lot like my old Perl "Camel Book" - sticky tabs on various pages, highlighter markup, margin notes. It helped me a lot and isn't hard to grok like some language texts can be.
In particular, it made pointers and pointer math a thing I looked forward to rather than some obscure, cryptic, arcane spell.
Rather like the FMTYEWTK Regex article did for perl's regular expressions.
Maybe you can find a copy in a library or at a used bookstore.
You can't have mine.

tboon wrote:
trueheart78 wrote:

Ok, I want to formally learn C. I've got experience with C++, although that's from 3 semesters in college (circa 2004).

I've always wanted to get closer to the hardware, and after using Linux as much as I have, I'd like to focus on learning it.

Are there any references, whether books, online guides, etc, that can take me deep into the rabbit hole? Something not too try, preferably.

K&R, man. Get it straight from the horse's mouth.

Then, you'll need something that covers the standard library and the latest standard. And, sorry, I don't have any recommendations of good material for picking that up.

I've been looking at that, wasn't sure if i should look elsewhere or not (not the first time I've been browsing).

duckilama wrote:
tboon wrote:
trueheart78 wrote:

Ok, I want to formally learn C. I've got experience with C++, although that's from 3 semesters in college (circa 2004).

I've always wanted to get closer to the hardware, and after using Linux as much as I have, I'd like to focus on learning it.

Are there any references, whether books, online guides, etc, that can take me deep into the rabbit hole? Something not too try, preferably.

K&R, man. Get it straight from the horse's mouth.

Then, you'll need something that covers the standard library and the latest standard. And, sorry, I don't have any recommendations of good material for picking that up.

I'll add a book that I can't find on Amazon, but here's the GoodReads page - C in Plain English by Brian Overland.
And the "not available" B&N page.
I treated this book a lot like my old Perl "Camel Book" - sticky tabs on various pages, highlighter markup, margin notes. It helped me a lot and isn't hard to grok like some language texts can be.
In particular, it made pointers and pointer math a thing I looked forward to rather than some obscure, cryptic, arcane spell.
Rather like the FMTYEWTK Regex article did for perl's regular expressions.
Maybe you can find a copy in a library or at a used bookstore.
You can't have mine.

I'll take a look - you sure I can't have yours?

I would let you have my Camel book first.
And you can't have that, either.

As an employer, why would you go out and hire one or two juniors at a loaded cost of > $55,000 /yr (loaded means taxes, benefits, etc included) when they can't do anything yet? You'll spend 6 months teaching them the basics (at the additional overhead cost of the mentor) and then they may or may not work out. Our model accelerates that basic learning, teaches people what they need to know to start building solutions, and the sponsors instead can interview 10-15 candidates and pick the winners. Lower risk, lower cost.

Oh, I completely agree - I think you have an excellent value proposition.

SixteenBlue wrote:

FizzBuzz - Enterprise Edition

One of my co-workers just sent that to me. Amazing. I'm surprised it didn't have a Factory to create the Factories.

Mixolyde wrote:
SixteenBlue wrote:

FizzBuzz - Enterprise Edition

One of my co-workers just sent that to me. Amazing. I'm surprised it didn't have a Factory to create the Factories.

On the plus side we've got 900 days of uptime and it hasn't crashed once!

SixteenBlue wrote:

FizzBuzz - Enterprise Edition

That's brilliant.

complexmath wrote:
SixteenBlue wrote:

FizzBuzz - Enterprise Edition

That's brilliant.

Brillant.

Bonus_Eruptus wrote:
complexmath wrote:
SixteenBlue wrote:

FizzBuzz - Enterprise Edition

That's brilliant.

Brillant.

Hahaha, that's possibly my favorite dev related story of all time.

S0LIDARITY wrote:

JobInterviewQuickSort() is very familiar to me.
IMAGE(http://imgs.xkcd.com/comics/ineffective_sorts.png)
Hover-text below

Spoiler:

StackSort connects to StackOverflow, searches for 'sort a list', and downloads and runs code snippets until the list is sorted.

And now it exists...

Few words can describe how delighted i am that stacksort now exists.

SixteenBlue wrote:

FizzBuzz - Enterprise Edition

I can't let a reference to FizzBuzz go by without linking to Dave Langford's classic monograph on the subject.

I'm slowly looking for a new job atm (great pre-lim interview this morning). Talking to a recruiter this morning;

TIL: you should have a github account because it makes you look like "the right kind" of coder

I just got some.. disturbing news regarding my place of work. My skills have atrophied due to the environment I am in (and I'm a Lead Dev, which is part of the problem but not all of it.. sigh). I really *really* need to get off my ass and get my skills back up there.

Dr.Ghastly wrote:

I just got some.. disturbing news regarding my place of work. My skills have atrophied due to the environment I am in (and I'm a Lead Dev, which is part of the problem but not all of it.. sigh). I really *really* need to get off my ass and get my skills back up there.

I feel ya. I'm currently leading my team through several aspects of security... at age 28, with no prior hands-on experience in the subject. Not having anyone available (immediately, within the company) as a mentor or guide is very frustrating. The only way I've managed to stay remotely current is reading (interesting articles from the first page or two of Hacker News, three times a day, plus some dev blogs) and working in my free time (see this post for an example).

Do you have the time to do any independent work? Do you have any interests in particular tech (languages, parts of the stack, niche topics)? I'm not the most knowledgeable guy in the world, but I bet I could help you find a fun way to hone your skills anew, if you're willing and able. [Feel free to PM if you want.]

Wrestling with Infragistics WPF xamDataGrid is proving frustrating. Having to hack in some functionality I need, and the documentation of course is only marginally helpful. At least a guy on their forum got back to me relatively quickly about the fact that their grid CAN'T do something I want it to.

Cyranix wrote:
Dr.Ghastly wrote:

I just got some.. disturbing news regarding my place of work. My skills have atrophied due to the environment I am in (and I'm a Lead Dev, which is part of the problem but not all of it.. sigh). I really *really* need to get off my ass and get my skills back up there.

I feel ya. I'm currently leading my team through several aspects of security... at age 28, with no prior hands-on experience in the subject. Not having anyone available (immediately, within the company) as a mentor or guide is very frustrating. The only way I've managed to stay remotely current is reading (interesting articles from the first page or two of Hacker News, three times a day, plus some dev blogs) and working in my free time (see this post for an example).

Do you have the time to do any independent work? Do you have any interests in particular tech (languages, parts of the stack, niche topics)? I'm not the most knowledgeable guy in the world, but I bet I could help you find a fun way to hone your skills anew, if you're willing and able. [Feel free to PM if you want.]

I have several things int he fire on my own time to re-familiarize myself with .net as well as the seven languages/databases in seven weeks books to go through. It just a matter of time and diligence. The way my work is now once I get done for the day I almost don't want to even think about programming. Most of my days are meetings and project coordination and when I do actually get to code its in an extremely niche code base. It does keep me up on SQL a lot though so I'm good there, I'm just losing skills like object patterning and business layer design etc.

Dr.Ghastly wrote:
Cyranix wrote:
Dr.Ghastly wrote:

I just got some.. disturbing news regarding my place of work. My skills have atrophied due to the environment I am in (and I'm a Lead Dev, which is part of the problem but not all of it.. sigh). I really *really* need to get off my ass and get my skills back up there.

I feel ya. I'm currently leading my team through several aspects of security... at age 28, with no prior hands-on experience in the subject. Not having anyone available (immediately, within the company) as a mentor or guide is very frustrating. The only way I've managed to stay remotely current is reading (interesting articles from the first page or two of Hacker News, three times a day, plus some dev blogs) and working in my free time (see this post for an example).

Do you have the time to do any independent work? Do you have any interests in particular tech (languages, parts of the stack, niche topics)? I'm not the most knowledgeable guy in the world, but I bet I could help you find a fun way to hone your skills anew, if you're willing and able. [Feel free to PM if you want.]

I have several things int he fire on my own time to re-familiarize myself with .net as well as the seven languages/databases in seven weeks books to go through. It just a matter of time and diligence. The way my work is now once I get done for the day I almost don't want to even think about programming. Most of my days are meetings and project coordination and when I do actually get to code its in an extremely niche code base. It does keep me up on SQL a lot though so I'm good there, I'm just losing skills like object patterning and business layer design etc.

I've yet to work at place that isn't short on solid leads. Not all of them realize that though, but hopefully you can jump to another company as a Lead still.

The intent in defining a schema for the data is to make it easier to evolve the contents of the blob over time

Mother f*ckers.

SixteenBlue wrote:
Dr.Ghastly wrote:
Cyranix wrote:
Dr.Ghastly wrote:

I just got some.. disturbing news regarding my place of work. My skills have atrophied due to the environment I am in (and I'm a Lead Dev, which is part of the problem but not all of it.. sigh). I really *really* need to get off my ass and get my skills back up there.

I feel ya. I'm currently leading my team through several aspects of security... at age 28, with no prior hands-on experience in the subject. Not having anyone available (immediately, within the company) as a mentor or guide is very frustrating. The only way I've managed to stay remotely current is reading (interesting articles from the first page or two of Hacker News, three times a day, plus some dev blogs) and working in my free time (see this post for an example).

Do you have the time to do any independent work? Do you have any interests in particular tech (languages, parts of the stack, niche topics)? I'm not the most knowledgeable guy in the world, but I bet I could help you find a fun way to hone your skills anew, if you're willing and able. [Feel free to PM if you want.]

I have several things int he fire on my own time to re-familiarize myself with .net as well as the seven languages/databases in seven weeks books to go through. It just a matter of time and diligence. The way my work is now once I get done for the day I almost don't want to even think about programming. Most of my days are meetings and project coordination and when I do actually get to code its in an extremely niche code base. It does keep me up on SQL a lot though so I'm good there, I'm just losing skills like object patterning and business layer design etc.

I've yet to work at place that isn't short on solid leads. Not all of them realize that though, but hopefully you can jump to another company as a Lead still.

My situation is a bit different as far as disturbing news, but it could easily go the way you are thinking. To be honest it's not so much my title that matters to me as much as the environment, fun (I like programming, just not in the niche product I work in) and pay. Of course pay goes with title usually..

>> Get invited to meeting
>> Raise valid questions
>> Get told "You are jr so I'm not answering"

Yup.

boogle wrote:

>> Get invited to meeting
>> Raise valid questions
>> Get told "You are jr so I'm not answering"

Yup.

I have recently crossed the threshold from JR to SR and they just find other excuses to ignore you.

If you're willing to relocate I can help you.

public Dialogs.FolderBrowser.fbStyles Style { set { switch (value) { case fbStyles.BrowseForComputer: m_obBrowser.Style = FolderBrowserStyles.BrowseForComputer; break; case fbStyles.BrowseForEverything: m_obBrowser.Style = FolderBrowserStyles.BrowseForEverything; break; case fbStyles.BrowseForPrinter: m_obBrowser.Style = FolderBrowserStyles.BrowseForPrinter; break; case fbStyles.RestrictToDomain: m_obBrowser.Style = FolderBrowserStyles.RestrictToDomain; break; case fbStyles.RestrictToFilesystem: m_obBrowser.Style = FolderBrowserStyles.RestrictToFilesystem; break; case fbStyles.RestrictToSubfolders: m_obBrowser.Style = FolderBrowserStyles.RestrictToSubfolders; break; case fbStyles.ShowTextBox: m_obBrowser.Style = FolderBrowserStyles.ShowTextBox; break; } } get { return (fbStyles)this.m_obBrowser.Style; } }

If you didn't catch it right away, someone here 9 years ago duplicated a .NET enum for the purposes of... selecting the value of a .NET enum.

Edit: Ah, hrm, it looks like they did it because FolderBrowserStyles is a protected enum for some reason.

bandit0013 wrote:

If you're willing to relocate I can help you.

Well now I'm all flattered and such being a simple python hacker.

Edit: Ah, hrm, it looks like they did it because FolderBrowserStyles is a protected enum for some reason.

The only feeling worse than complaining about code and then realising it's actually correct is complaining about code and then realising it was you that wrote it

I definitely didn't write it. The problem here is that their "reimplementation" of a .NET enum didn't a) match the original values, and b) did not allow me to use it as a bitfield. FolderBrowserStyles is designed to allow multiple options, like BrowseForPrinter | RestrictToFilesystem. You can see from that switch statement that such a thing wouldn't work.