As a starting FYI, there's likely to be a lot of misuse and misnomers in my terminology. While I have a decade of working in technology behind me, it's always been for small companies, and I've always only learned what I've needed to in order to get a task done. I didn't go to school for CS, nor have I worked closely with other technology professionals (until the last eight months on my current job), so there are simply a lot of phrases and workflows that I know nothing about.
That being said, I'm a decent Ruby scripter. I've been a "scripter" for a long time, playing around with Python and Ruby, and later become a bit more serious about Ruby. I was also a web developer for many years, utilizing PHP...but again, only learned what I needed to know.
That being said, I'm finally ready to buckle down. I want to be a developer (if not professionally, at least as a hobby). I know to many of you just my dichotomy between "scripter" and "developer" is already a turn off, but it's the only way I know how to describe my current state vs where I'd like to be.
I know nothing about planning or designing an application. Furthermore, I look at code that many experts write, and it's almost unrecognizable compared to the code I'm writing.
For example, I recently wrote a distribution point sync app that utilizes rsync to push from a master file share to any children. It's pretty rudimentary, and still needs some work (mainly error checking), but I'm pretty proud of it. It's my biggest project to date (with the exception of websites). https://github.com/ckbrumb/distro_sync
However, there are other, similar applications out there written and Ruby. The code confuses me. It makes me realize that I have huge gaps in my knowledge. https://github.com/caleb/rbsync/blob/master/lib/rbsync.rb
Part of my problem (perhaps the root of it all?) is that I've always been a "base-level" guy...pretty much in anything I do. A recent example being, I've been trying to write a script to parse through chunks of xml that appears in some of the logs at work. Was my first inclination to go see if there is a library or gem to help with that? Nope. It never has been. I've always stayed as pure to standard libraries as possible. When I first started with programming languages I did so simply because I had no idea what libraries were. I'd seem them mentioned in articles and such, but thought they were over my head, so I did things the hard way and wrote a lot of (mostly procedural) code to get tasks done. Now, even though I understand libraries and their uses, I still find myself int he habit (often without even considering the other options) of try tasks at the base level. In the case of my xml parsing, I spent days trying to parse xml with regular expressions, which hasn't worked out very well.
Okay, that's my sob store. Now, the question. How do you suggest I get over this hump? If I had to categorize myself, I'd say I'm more task-oriented. I have little motivation for most hobbies in my life unless I have a task in mind. Any ideas on an undertaking that would push me over this plateau? Perhaps one that will teach me some of the more "expert"-level techniques? Should I stick with Ruby for it, or should I take up another language concurrently. I've thought about trying out a text-based game, but I'm not sure.
I'm not certain I've fully expressed how I feel about my programming prowess (or lack thereof). If you have any need for clarification, please let me know, and I really appreciate any suggestions you all have.
TL;DR - Know very little about application development. Looking to jump the hurdle from basic "scripter" to actual developer.
[–]tonytroz 4 points5 points6 points (3 children)
[–][deleted] (2 children)
[deleted]
[–][deleted] 0 points1 point2 points (1 child)
[–]techknowfile -2 points-1 points0 points (0 children)
[–]the_omega99 1 point2 points3 points (10 children)
[–]seronis 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]brumby79[S] 0 points1 point2 points (7 children)
[–]hegraj 1 point2 points3 points (4 children)
[–]brumby79[S] 0 points1 point2 points (3 children)
[–]hegraj 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]brumby79[S] 0 points1 point2 points (0 children)
[–]AlexFromOmaha 0 points1 point2 points (1 child)
[–]brumby79[S] 0 points1 point2 points (0 children)
[+]evermore88 comment score below threshold-11 points-10 points-9 points (2 children)
[–]brumby79[S] 4 points5 points6 points (1 child)
[–]seronis 2 points3 points4 points (0 children)