Archive for September, 2007


Everyone is out to get me….

Friday, September 21st, 2007

It would seem this week that everyone is out to get me… Guess thats life. Who wants to take my marine science exam? Any takers? Shouldn’t be hard… guess thats a good reason for me to take it.

===============

On a different note, Algorithms & Data Structs was interesting, lots of probabilities. Hurrah!

response to bcully

Thursday, September 20th, 2007

bcully: It was a few months ago and I can’t recall exactly what it was that went wrong. I remember using it with Debian Etch 4.0 and having a couple issues. I have since upgraded that server to Testing/Lenny. I haven’t bothered to try it lately since I’ve been moving along with bzr fine. I would be willing to try it again, and will look into it later this week sometime and give some feed back.

I by no means was condemning the other DVCS’s I listed, but rather just noting my experiences. I know several people who use mercurial, darcs and git without issue. Sorry if my post seemed to allude to that.

bcully: I would be interested in possibly helping to fix any issues I might encounter. I’ll let you know what happened later in the week.

VCS/SCM for the Student or Mobile Hacker

Wednesday, September 19th, 2007

If you’re a student (like me), and you work a lot on your computer (like me) then you probably have a lot of files (like me). I’m a Computer Science, Mathematics & Marine Science triple major so I spend a lot of my time programming, doing problem sets, and writing lab reports. Now the core of this issue arises in that I have a workstation in the research lab I work in, my laptop, and a desktop that I use in my dorm room. I like to be able to access all my important assignment files from anywhere that I might be (my room, on the go, in the lab). The problem is, I hate flash drives, I always lose them, and I find them in general an annoyance. What do I do?

I have been using an SCM/VCS for my code for a while now; at least for a couple years since I have started coding a lot. Now I play no favorites on a specific SCM/VCS but my preferences are SVN for server/client models and bzr for DVCS. I recently picked up LaTeX over the summer since I’ve been writing reports and papers that have a lot of mathematical formulae in them. Now you may wonder why I need access to these documents/files on anywhere besides my laptop. Well the issue is I don’t particularly like working from a laptop because its terribly uncomfortable to me. Its an inconvenience I suffer during my day-to-day travels, but when I have the opportunity I like to use a desktop at work or in my dorm. Note: There’s been plenty of coverage on this topic over at CodingHorror I believe but basically laptops are not designed in a manner that is good for ones’ posture.

Since I’m using plain text files for everything now that I don’t need to use a proprietary format of sorts, it makes sense to use an SCM/VCS. Not only does this allow me to share the files between the three computers, it also provides me with a history of changes to files that I can go back to if I’ve realized that I’ve made a mistake in some document or code file.

For sharing between my computers, I chose to use bzr. Bzr is the pet project of Canonical Ltd., the same company backing Ubuntu. Its not a perfect system, but it was actually one I ended up using by accident. I originally was looking for a DVCS to use for a project I am working on with a friend. We decided on Git initially but seemed to have a lot of problems with it on the server we were using. We then scrapped Git for Mercurial because it was the next one I could remember hearing about. This again was a failed trial, and we came upon bzr. Now there are a lot of benchmarks claiming a lot of bad things about all of these different DVCS’s. Honestly speaking, I use bazaar because well, it *Just Works(tm)*. It worked the first time I used it, and it has worked since.

So back to my files, I just make the directory, give it a little “bzr add action and go on my way. When I create a new file, I “bzr add ” it and go on my merry way. When I’m done with that session on the specific computer, I do some action, say what I changed, and then go on my merry way to the next computer after my class. When I get to that new computer I just do “bzr update” in the repo, and *poof* the files are there for me to play with.I think this is a great system for anyone who has a lot of places they need to use a set of files but don’t want to keep up with a flash drive.

response to ncm

Tuesday, September 11th, 2007

ncm: Ah, your point is noted then. Well at this point I’m not especially dead set on anything except that I know I’d like to work in mathematics or computer science, preferably in an area bridging somewhere between biological sciences and math/CS or specifically in distributed systems. As to where I’ll end up, who knows right now, I’ve got a couple years before I’ll be doing grad school. Out of curiosity, what is it exactly that I’d need to pick up in order to (usefully) participate in the Making? I guess I’ve yet to understand what it is exactly I’ll be missing.

As for voting, I vote, and support candidates I feel are the right choice at a local, regional, state, and national level. My beef was merely more of a rant about a system I feel is flawed but you are correct, its quite simple to sway a body at the lower level though sometimes I’m not sure it matters as much when the electoral college comes into play.

Why people my age (17-25) are increasingly more apathetic about politics…

Monday, September 10th, 2007

Disclaimer: The opinions expressed in this post are purely those of my own. I have no intention of targeting any one political affiliation, party, opinion or group. I merely am expressing my own opinions as to the reason for a dropping interest in politics in young adults. Seeing as this blog is in fact syndicated on Advogato.org, if you should feel the need to respond to my post with an inflammatory comment and you are an Advogato user, please use the comment system on my blog and not post to your own blog that is syndicated with Advogato.org. All rational replies & comments are welcome as responses on Advogato. I’m no expert, don’t treat me like one.

======

I’ve been reading a few articles in the last year or so expressing concern for the falling interest in young adults for politics. Most young adults are not interested in whats going on, and there are many reasons for this, including materialism, personal lives becoming more dramatic with the ever rising methods of communications, and so on. Being a member of this age range, I can recognize these things, though I’m somewhat disconnected from that. I’ve never particularly relished the drama that ensues in life in general and I tend to shun such things.

Drama and materialism aside I suspect there is a deeper reasoning for this. Today students are better educated, or rather a wider range of students are better educated than their predecessors were. For the most part there is a national education system that gets decent amount of students from all income-classes through grade school. As students are (relatively) better educated so does their understanding of the government. The government of the days of old was primarily dominated (and really today as well) by the upper class. You needed money to campaign and and you need today as well. The difference is, people are starting to understand that the electoral college is flawed to the core. I’ve long held this belief and I’ve decided that the young adults of today are seeing this and choosing to not participate in a partisan system.

This is why I have a hard time convincing myself that my vote counts. In fact at this point I’m not even sure my vote counts. The electoral college may have been a good idea at the time, but as widespread and global as this nation is, we ought to move back into a popular vote system. With the electoral college you’ve suddenly split the nation into regions. If using a popular vote, then you no longer have regions of states (or battleground states). If we use a popular vote, we’d be voting as a nation, not a group of opinionated states.

People whine, piss, and moan about unity, well here’s your big clue, you’re creating a lot of non-unity with the electoral college. Of course we’ll see a revolution before we see a change in the electoral college, the party members gain too much by having the electoral college. There’s more predictability as most “red” states, will stay red, and most “blue” states will stay blue. It leaves merely the battleground states for the candidates to fight out.

Anyone else seeing the big picture? Feel free to criticize, belittle, or correct me for what I’ve said. I’m no expert, its just an opinion of how I see it. Take note that this is one of the rare times you’ll ever see me mention politics, so relish this commentary.

response

Sunday, September 9th, 2007

ncm: I guess I’ve gotten my terms confused. I thought you were implying that Computer Scientists cannot be makers, but only EE’s or CE’s can. In that case then, I am in the area of “Makers.” I have no intention of working in the academic research area, rather R&D for companies. Though at this point we’ll have to see whether my interest stays entirely in CS or if Probability/Statistics takes over as I take more mathematics. Guess I was confused. If you’re implying that Computer Scientists can in fact be Makers then I would be in that category.

response to ncm

Saturday, September 8th, 2007

ncm: Well Making isn’t exactly what I’m planning to head for. As my plan is to get either a Ph.D. in mathematics or computer science (we’ll see when I get there) I don’t have a lot plans to go into the Making area. More the research area is my interest. I would prefer to do research in something that I’m interested in rather than Make something I am not interested in if that makes any sense.

=======

Today was good, though somewhat sad that UM did not handle themselves as well as I’d have hoped against OU. Oh well, they’re a young team and have potential, maybe we’ll see an improvement.

Time to study.

response to ncm

Friday, September 7th, 2007

ncm: Well I’ve somewhat solved my problem. Did some research on requirements for a math major and I think I’ll throw that into the works (again). It would seem that the areas of CS that I’m interested lend themselves quite well to mathematics, and I’ve always enjoyed math. I have been taking a few grad level CS courses but sadly this school isn’t well known for their grad level CS program. Though I suspect the skills I’ll practice/pickup while taking mathematics will help me more in the long run than any “software engineering” or “operating systems” class. Thanks for the suggestions :)

==============

Wooooo Software Engineering project discussion tiiiiiiiiiiiiiiime! Fuck >_<.

The four programming language groups everyone should learn a language well from…

Friday, September 7th, 2007

I saw a reddit question today that was something along the lines of “I’d like to learn 16 languages in a year, which ones should I learn?” This of course sounds ludicrous to me and I definitely advocate against that. I think a better goal for working in a year (and this is stretching it) is to learn a language from the four major language groups (in my opinion) well. This is by no means an authoritative list of languages, but rather a list of languages that just by learning them can teach you things that other languages wouldn’t and thus make you a better programmer.

Lisp - It seems that many ideas and features people look for, Lisp already has, so take some time to learn them here, it’ll definitely make you a better programmer.

Haskell - Everything is a function, and thus you have no side effects. This will teach you to right better code in that you will end up trying to reduce side effects in your Java/C++/Python etc. code.

Erlang/Smalltalk - The beauty of message passing comes out in both these languages, Erlang more in a truly distributed manner. I personally am learning Erlang and love it.

C/Assembly - Working in lower level languages like these two will teach a you a lot about thinking about how you write something will effect different architectures. I know C and haven’t had a chance to really play with Assembly yet.

I’m half way through that list, that is I’ve learned C & Erlang pretty well, next is Lisp. I think those are some of the best you learn. Learn a few things well, the others will come, languages are merely syntax, its the idioms, paradigms and skills that will make you a better programmer, not the language.

responses

Thursday, September 6th, 2007

ncm: My original plan had been to double in CS & EE but unfortunately that tends to be somewhat difficult at this University since the engineering school makes it immensely difficult. I could switch to EE completely but I’d be adding at least another year on to school, which I’d rather not do.

I’ve been working in a more concentrated mathematics portion of CS, that is I could almost be a CS & Math major due to the amount of math I plan on taking. My interests though are not so much in hardware as they are in some of the theory areas, that is computational models and their optimization. I suffer from a great interest in MechE, EE, CS (grad level), Math, and well everything science, so its hard to really say what it is I’m looking for. My overall interests deal with models of realistic systems, so neural networks, touch-point processes, distributed systems and the like. Seeing as I’m as far into this as I am, and trying not to have to add another year to undergrad, I think I’ll push to get to grad school and make my headway there.