James Larisch

I write not from wisdom but out of a desire to achieve it

Page 3

James Learns C: Day 1

As I grow as a computer scientist, the less I feel like a computer scientist. I would like to change that by becoming truly hardcore and learning C.

This will be my journey.

A primer on my tools. I will be using Mac OS X 10.9 Mavericks. I will be using the Mac C tools that ship with OS X - the ones that come with XCode. My text editor will be vim.

I will start there - if I find I need more tools I will seek them out when such a need arises.

mkdir james_learns_c, cd james_learns_c, vim 1-hello-world.c

I will begin with the canonical hello world! app, but I will be approaching it differently. In order to extract as much meaning and information from this journey I will be diving as deep as I can into each construct that I use. This could turn into quite the rabbit hole.

#include stdio.h

int main() {
  printf("hello world!\n");
  return 0;

I compile this by typing gcc

Continue reading →

James Learns C

I am a computer science undergraduate. I get paid to write software. I have essentially no idea how a computer works.

I don’t think that’s ok.

I want to learn. That is why - other than existing projects - I will be writing everything I do from now on in C. And I intend to write about it, here. I want to know how a computer actually handles a programming language. I’m tired of my fancy REPL.

Get me closer to the metal.

Continue reading →

Scarcity and the dangers of oversaturation

I need less information. Every day I read stories about a seasoned programmer who started on a computer that could barely do x, y, or z, and all he had was q book and r amount of time to mess around. He read q over and over until the pages were destroyed. The book was an HTML or C book, and he soaked up every bit of information in the book because that was all he had.

Today, I visit HackerNews and see 9 posts on new programming languages / frameworks, 3 on how to code better, 2 on productivity, and 4 show HNs. Maybe I shouldn’t be programming in Ruby after all, look at that cool language everyone is using. Damn, he made that in 3 weeks? This stupid project has taken me months. That’s how we should be coding? I’ve been doing it wrong. Plus, those articles contradict!

I need to drive myself into scarcity. I need a Ruby book, my simple vim editor, and a project. I need to read the docs

Continue reading →