As was foretold, we've added advertisements to the forums! If you have questions, or if you encounter any bugs, please visit this thread: https://forums.penny-arcade.com/discussion/240191/forum-advertisement-faq-and-reports-thread/

Career crisis at 27 = good times

NightslyrNightslyr Registered User regular
edited April 2007 in Debate and/or Discourse
I think I'm having a career crisis.

I'm trying to become a web application programmer. I currently work 10 hours a week for a local startup as the de facto web developer. Why so few hours? Well, it's all my boss can afford at the moment, which works out great for me as it doesn't fuck up the benefits I get from the state. The problem is that I feel I've sort of stalled. Some background is necessary to understand my feelings.

I started going to college in the fall of '97. Due to my physical disability, I couldn't take a full course load, so I knew that I wasn't going to graduate 'on time.' Over the course of my collegiate career, I changed majors several times. I started out as a liberal arts undeclared freshman because I wanted to follow in my oldest brother's footsteps and become a lawyer. Then it dawned on me that I hated writing long papers and spending all my time doing research, so I switched to computer science.

I did well in the intro courses (actually, I got a C in the first, then failed the second...when I re-tried them, I had a literal epiphany and aced them both). My data structures class didn't go so well. It was an early morning class, and neither the professor nor me or my fellow students wanted to be there. My professor basically half-assed it through most of the classes. There were actually arguments between him and one of my friends over incorrect code that he put on the board (not intentionally). These were rudimentary errors, which basically fucked up the remainder of what he was trying to show us. I got a C in that class. The next class was assembly language, which I failed. Twice. I decided to get out while I could, so I transferred over to communication, got a few 4.0 semesters under my belt, with my BA degree. Because of the CS courses I took, as well as a few networking/web design courses, I had a minor in computer information and technology. I also had a minor in music. After all that, I graduated in the winter of 2004, a few months after the Sox won it all.

I spent the next year and a half trying to teach myself all things web design. I had already mastered HTML (yeah, yeah, I know...big fucking deal). I thought I knew CSS, but after months of struggling with layouts, I found that my instructor in college never taught us the box model. Oops. I spent the remainder of my time trying to learn the Big 3 -- PHP, MySQL, and JavaScript.

I admit I'm still pretty much a newbie when it comes to those three. I can do some reasonable DHTML stuff with JavaScript, and I managed to build a complete (if shitty) online store using PHP and MySQL. My frustration stems from these seemingly constant frustrations:

1. My clients either ask me for something incredibly simple (a site that's only HTML and CSS, so I don't learn anything) or something way beyond my capabilities (designing and implementing a full-featured CMS...other than a login system, I wouldn't know where to start).

2. I've always had a hard time devising and understanding algorithms. I'm trying to learn some basic OOP to use in PHP5. I'm used to objects and classes because I used them in college with C++, but we never really used OOP design philosophy with them. Instead, they were just custom datatypes that we used in a procedural manner. I'm currently reading through an OOP pattern book for PHP (it's that yellow and black Apress one), but a lot of the patterns are confusing to me.

3. Friends and other people I know seem to be beyond me in terms of skill, which is somewhat depressing.

Admittedly, I've only been using PHP on a regular basis for a few months now. Is my frustration just a result of my lack of experience? Or do I just suck at this?

Nightslyr on

Posts

  • bobjobbobjob Registered User regular
    edited April 2007
    Hell, I'm almost 27 (in a few months) but I can understand what you are going through. I am a CS grad and current code monkey, and for me all programming/scripting is the same to me. Just as in math (for the most part), if you learn the basics (constructs, basic sorting algos, types, etc) you see that everything else is the same stuff usually put in a slightly different package or rejiggered with other stuff to make a hybrid.

    From what you posted you didn't have such a hot time in the beginner CS courses where you would most likely get a good grasp on the fundimentals. That may be your stumbling point (but everyone is different). But what you have mentioned is that you have the drive to self educate which is essential, unfortunatly it is hard to find a job where they want you to learn/try out new things to you unless, 1) you are already hired and they have a new project, or 2) you are some kind of intern (or paid like one).
    I could go on and on but I will try to keep it short.

    on your points:
    1) Take the easy jobs to pay the bills, in your off time learn the new stuff (or go back to the old stuff to get the fundimentals, any Stephens book on network programming or K & R can help you with actual coding and good design practices. OOP stuff will follow quickly once you master basic+good coding practices/methods.

    For the advanced stuff, if you are feeling underprepared but still willing, get a parter that knows the stuff you don't.

    2) you almost never have to devise algorithims from scratch. pretty much everything has been done unless you are doing some R&D or something. Most "algorithims" you program now are just procedurals that use premade functions that do the work. Understanding how algos work comes along with knowing the basics.

    3) Well that is the tech industry. There is always someone better and usually younger. You shouldn't worry about how well others are doing cause it will never end (the grass is always greener, etc). But I know it is easier said than done.

    So overall I would say your frustration is rooted in your feeling of lack of progress in picking up on things. Give it more time and keep learning/trying. I really recommend trying to go back and learing older stuff like C. It will give you a solid foundation to move up to the more modern web languages like python, php etc.

    bobjob on
    I can only promise you good times, hot women, and .... EVIL! -White Shadow
  • durandal4532durandal4532 Registered User regular
    edited April 2007
    Did... did you go to McGill? Because your experience with CS is frighteningly similar to mine. I'm glad I didn't decide to make it my major.

    As to your question, all I can say is that you'll get better at anything if you dedicate a lot of time to it. If you see people passing you by in terms of job skills, it most likely is just because you're not getting the same opportunities to practice as they are. I can't really tell you where to start looking for challenges that actually help you build up experience while not killing you... I agree with bobjob, though. Try stuff like C, get really really confident that you know how to make something without fail, then moving on to newer things feels less like flailing than like building on a skill. I know a lot of the rapid flipping between Java, pseudo-code, C, python, HTML, and Assembler that I've done during my CS minor does not do wonders for confidence. Get a stable base and go from there.

    Edit: Also, this is maybe more of a H&A thing? I don't actually know for certain....

    durandal4532 on
    Take a moment to donate what you can to Critical Resistance and Black Lives Matter.
  • SpackleSpackle Registered User regular
    edited April 2007
    Sounds like you just really have to work at it, probably harder than others. 10 hours a week? I'd sit down with a book and work through it. Make a mock up application using your newly discovered skills. Keep at it and when you get frustrated, take a break!

    I do 40+ hours a week doing software development and even still I like to muck around at home. But seriously, sounds like you enjoy it, just keep at it

    Spackle on
    Taco Bell does win the franchise war according to the tome of knowledge that is Demolition Man. However, I've watched Demolition Man more then a few times and never once did I see WoW. In conclusion Taco Bell has more lasting power then WoW.
    D&D Metal Thread: HERE
  • ShintoShinto __BANNED USERS regular
    edited April 2007
    Why not do more than 10 hours a week for free if you aren't doing anything else.

    You need shit to put on your resume. You aren't getting paid either way. Spend your time doing something worth talking about.

    Shinto on
Sign In or Register to comment.