Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!



Programming Mistakes To Avoid

rgravina Avoid over engineering and over generalising (394 comments)

The biggest programming mistakes I've had the displeasure of making, or discovering in others code, almost always centre around one of these two problems:

1. The code is over-engineered
2. The code was abstracted before there was even a need for the abstraction.

I remember when I was less experienced, how thrilled I'd be over code that was clever, solved many problems aside from the one I was trying to solve, and had some clear reusability built in. What a work of art, I thought.... until I eventually realised that much of the extra code I had written didn't get used, the abstracted code was never reused - or even if it was, I couldn't predict how it would be reused and the abstraction was clumsy at best, useless at worst.

It's sad when this happens - good intentions, but the end result is a lot of waste. I'm embarrassed to look over my earlier code which is like this.. I like to think I do it less now, but the temptation is always there... I'm going to need to do this later anyway... I can just abstract this bit here and reuse it some day in the future...

My advice now... Don't do it! Just wait until the reuse case comes along, or the new feature request comes along, and *then* do it. You'll know so much more about the problem domain then, or you might avoid days (weeks!) of wasted effort.

more than 3 years ago

NASA Tests Hardware, Software On Armadillo Rocket

rgravina Seven weeks! (108 comments)

NASA teamed with Armadillo Aerospace and Draper Labs ... to integrate and flight test a real-time navigation system in only seven weeks.

They probably just replaced their Waterfall software development process with something agile, like Scrum. :)

What's that, three two-week iterations with one one-week pre-launch crunch?

more than 4 years ago

Restructured Ruby on Rails 3.0 Hits Beta

rgravina Re:Testing (197 comments)

Yes, Django does have testing support, and Django itself is quite well tested - so I agree with you. The point I was trying to make is just that testing wasn't really a priority amoungst developers in the way it is in the Rails world. Things may have changed now.

As for talking about professionalism, it's more just a case of being fustrated by developers not testing their code - and it happens in all languages (and I do it sometimes too). It's just less common a problem in Ruby/Rails in my experience.

more than 4 years ago

Restructured Ruby on Rails 3.0 Hits Beta

rgravina Testing (197 comments)

Slightly off-topic, but since a lot of comments are about how Ruby and Rails has nothing other popular dynamic languages and frameworks have to offer, I'd like to say there's one thing which drew me to Rails which I couldn't find in any popular Python or PHP web frameworks.

Testing. Craftmanship. Quality. This is more cutural than technical. While it's technically possible to write tests in PHP and Python, it just seems like people rarely do (especially so with PHP). And even if they do write tests, it's an afterthought. Things may have changed since I've done any serious development in PHP or Python, but I've done a little with Django and the testing that's done in the community didn't come close to Rails at the time. I'd be lucky to find a plugin authour whom had a test suite for their work and there was nothing of the function or quality of RSpec or Cucumber around.

This kind of lax "I tried it in my browser so it works" attitude to web software development in PHP and Python almost made me want to give up on web development and get into some other type of programming with some real professionalism - but thankfully I found Rails and glad that in general Rails programmers take their work seriously.

Having said all of that, I don't want to paint too negative a picture of Python. There are some awesome frameworks and communities in the Python world - Twisted/Divmod, for example, where the community really are bright and dedicated to test driven development. Zope 3/Grok is another. But I couldn't find anything in the mainstream web development world which were. Being mainstream is unfortunately important in getting anyone to support your descision - be they management, or a client.

more than 4 years ago

The Cell Phone Has Changed — New Etiquette Needed

rgravina Re:Look at Japan (585 comments)

I was going to mention Japan too. I remember after spending some time there and getting a train for the time since I'd gotten back, thinking how rude someone was for having a conversation on their phone on the train. I laughed about it once I realised my reaction but even now I still get annoyed by people having non-essential conversations on the train. Sure, calling someone to pick you up is no problem, but talking about your relationship problems for 30 minutes in front of a car-load of people? Maybe some people find it therapeutic.

more than 4 years ago

Does Your PC Really Need a SysRq Button Anymore?

rgravina Re:I don't recall ever using it... (806 comments)

No, it doesn't. The only command keys I can see on this Macbook Pro keyboard are esc, F1 - F12, an eject key, delete, tab, caps lock, return, shift, fn, control, option/alt and command/flower.

more than 4 years ago

IT Job Satisfaction Plummets To All-Time Low

rgravina Re:No more working for the man (453 comments)

I don't know... I have briefly tried freelancing but I can't shake the feeling of just wasting my time. I really don't like being a lone programmer sitting in my room trying to find ways to fill my time, doing whatever work I can find. Even if I go out, I waste so much time travelling from cafe to cafe. It's fun for a while, but when I really want to get stuff done, I *need* an office. Perhaps if I was freelancing in a shared office setup it would be different. I just can't work from home. I also miss things like having other people to bounce ideas off and larger projects.

Also, I found that I just don't like looking for work and worrying about finances. I want to spend as much as my time as I can actually writing software, so perhaps I'm better suited for employed life.

I find it interesting because I also see this trend towards freelancing, and the majority of programmers I meet are very happy with the lifestyle.

more than 4 years ago

Kurzweil Takes On Kindle With "Blio" E-Reader

rgravina Re:Is this new? (168 comments)

"Grandpa, there's this new programming language that all you have to do is write once and it runs everywhere! I invested my life savings into it!"

I pictured Duke[1] in some futuristic space getup when I read this.

"Live long, and" (using an interface, you can prosper in any way you see fit!).

[1] The mascot, not the game character.

more than 4 years ago

Duke Nukem 3D Ported To Nokia N900

rgravina how many? (95 comments)

"There are numerous other Duke games in various stages of development, several due out this year. We are definitely looking to bring Duke into casual gaming spaces, plus there are other major Duke games in production."

So that's multiple major Duke games plus several smaller ones with more than one due out in 2010?!

Hillarious! It's like when you ask your friend starting a business on their own how that are doing and they'll say something like "Oh yeah doing great! Got a few things on the burner, with a couple of them looking really good, and few other interesting things going on." which really means "I have no work, but don't want to admit it" :)

Anyway, good luck to them!

more than 4 years ago

Girl Gamers More Hardcore Than Guys

rgravina 29 hours per week! (284 comments)

Am I the only one that thinks 29 (or even 25) hours per week spent on an online game is grossly excessive?

more than 4 years ago

Climate, Habitat Threaten Wild Coffee Species

rgravina now it's serious (274 comments)

OK Earth, you've threated my coffee supply. Now I'm listening!

more than 4 years ago

Intergalactic Race Shows That Einstein Still Rules

rgravina lots of authors (227 comments)

Funny... I sent the link to a friend who does GRB-related research, and she said "thanks, I already know about it though, I'm one of the authors" :). Apparently there are 210 authors on that paper though. Imagine coordinating that.

Anyway, I don't know a thing about astrophysics so that's about all I can contribute to this discussion.

more than 4 years ago

Experimental MacRuby Branch Is 3x Faster

rgravina Re:Ruby? (191 comments)

So you're suggesting that instead of creating languages like Ruby, we should create libraries to more complex environments like Java to make them faster to develop with? Variety is the spice of programming :). Personally, I'm glad languages like Python and Ruby exist and they are not only great and productive languages, they have both made me rethink the way I write software. I'm not sure just adding on top of Java would have achieved the same thing.

more than 5 years ago

New Law Will Require Camera Phones To "Click"

rgravina Phone in Japan do this (1235 comments)

Phones in Japan all make the clicking sound (which you can usually choose from several - a camera shutter sound, "cheese!" etc.). I believe it's for similar reasons - so people can't take photographs of people incognito in trains etc.

more than 5 years ago

Feds To Offer Cash For Your Clunker

rgravina Re:Won't Help Big Three (740 comments)

Yes but, I guess the spelling "Viet Nam" doesn't need fixing (unless the reply was fixing something else?).

more than 5 years ago

Feds To Offer Cash For Your Clunker

rgravina Re:Won't Help Big Three (740 comments)

If I remember correctly, Viet Nam is how the Vietnamese write it.

more than 5 years ago

Ubuntu 9.04 Daily Build Boots In 21.4 Seconds

rgravina Re:Your Goal: One Second or Less (654 comments)

Bullshit. An idea is useless until it is implemented in the same was that any other potential is useless until it is realised. Once implemented, its success is a combination of how good the idea was and how well it was executed. Giving either party too much credit for the outcome means not giving the other enough respect.

I'm a big believer in paying for both talent and effort. If your idea took you 10 minutes to come up with, but took a programmer six months fulltime to flesh out and implement, you don't deserve 90% of the credit no matter how good your idea is. But you don't deserve 10% either, if your idea was informed by years of experience *and* you were an active participant in the development process.

Finding business people who understand this, as a programmer myself, is harder than it should be.

more than 5 years ago

Chrome On the Way For Mac and Linux

rgravina Re:Why is it taking so long? (308 comments)

What about wxWidgets? As far as I know it's as good at QT, and doesn't have the same license problem

more than 5 years ago



Studying Computer Science Online

rgravina rgravina writes  |  more than 5 years ago

rgravina writes "I'd like to study some computer science subjects online. Although I've studied some CS before, I didn't take certain classes (computer architecture, compilers) and would like to now while still working as a web developer. I've tried (really tried) to do this on my own via self-study from textbooks and following online lectures like Berkeley Webcasts but find that without guidance or the need to do projects and exams, I'm not really progressing. I know I could do these on my own, but it's harder than you might think without any kind of deadline or assessment/feedback. Perhaps I could just dive into an open source project, but without any study or experience in compilers or embedded dev I wouldn't know where to start. The technology is there to deliver video lectures and interact with other students and staff online, so why is it so hard to find a good online course? Since I have a degree already I'm not concerned about qualifications or the prestige of the provider — I just want good, quality education. I've heard there are lot of scams in the online education world. Has anyone in the Slashdot community had a good online learning experience which they could recommend?

Note: I'm Australian, so Australian providers would likely be the most affordable because I can make use of our government loan system (I have looked and found distance learning options — Open Universities Australia being one (although lacking much real CS) and Uni of New England being another). I'm equally interested in affordable courses from around the world."


rgravina has no journal entries.

Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>