March 2013
5 posts
3 tags
This morning I fixed the problem with the router
I replaced it. I had the old one laying around, so I switch the new modem/router for a modem and a router setup.  I was able to reach the nginx server.  That makes me pretty happy.
Mar 17th
3 tags
Ideas for the rogue server
* Mostly static content * an interactive  fiction fanzine
Mar 17th
2 tags
Updates on tonight's goal
So, I can’t host a webserver because the internet mode/router sent from my isp won’t let me log in.  I gave up on getting support after 17 minutes went by after told by the queuing service that I had an expected three minute wait. Yes, windstream, you suck. I  did created an octopress site and went through the basic installation and configuration. The set up to github pages...
Mar 17th
I should also run that rogue web server
Mar 16th
1 tag
Okay, let's learn how to use octopress tonight
Mar 16th
February 2013
0 posts
3 tags
Getting control over a blob in canvas
So today I pondered on what I wanted to do. And although I could keep working on it without any graphics, I decided that it would probably be very cool if I could get a rectangle moving around. And since I had to learn how to do this, why not learn how to do it in canvas? year ago I had moved around an image using the dom, but canvas seems to be the better tool for this kind of work. I found a...
Feb 1st
January 2013
9 posts
1 tag
Working on next game
So I finished the development on the other game. These were the things that I learned: 1. I love the minimalistic UI. You can get stuff done more quickly 2. The art part is my greatest weakness. It will derail the project For February I am being more ambitious. I am going to try to create a simple RPG-style game with 2-dimensional movement. In fact, I got the movement programmed right now, and...
Jan 31st
1 tag
Day 6, making artwork
so I am at the point of making artwork. This is the hardest to me since I spent many years as a teenager drawing. I haven’t drawn in years, so I am not that good at it anymore, yet my expectations are greater. So on day 6 I was working on the hands. These are hard in 8-bit.
Jan 17th
2 tags
Day 5, one game a month
No programming today. I spent the day working on artwork. The game right now has the first opponent, the boss opponent, a buggy mechanism to cycle through each opponent, and ending conditions. I am at the point where I  can transition to making the game graphical. I drew the main character and then I created a series of opponents, which in reality are the same character with different cloths and...
Jan 15th
2 tags
Day 4 on a game a month
I added another opponent. The boss, actually: the random strategy for Rock-Paper-Scissors. I learned that if one starts with double the amount of money, the chances that the player will win by consistently playing the game are pretty high.
Jan 14th
2 tags
Third day of RPS
I added the mechanism to advance to another level and for this to display on the screen.
Jan 13th
2 tags
Second day on rock paper scissors
Today I have spent more than 30 minutes because I had a little of time, and it was fun. So now I have reorganized the game to fit in a table, I added the storyline, and I added a game winning condition. I also have refactored the procedural program first into functions and then into an object. I am in the process of getting the basic functionality back. I have to troubleshoot the outcome. I may...
Jan 11th
2 tags
I am doing the game in a month challenge
Yet I don’t have time at all. Not only do I not have time, but I am in semi-burn out mode. So how will I handle it? Easy: make a lame game. Because it is more important to participate and try a little than shoot for the stars and hit nothing. I even decided on a name for my endeavor: Lame Games Studios. The first game that I will work on is Rock Paper Scissors. Actually, I already finished...
Jan 11th
1 tag
How to start minecraft in windows on a lan with...
java -Xms512m -Xmx1024m -cp “%APPDATA%\minecraft\bin*” -Djava.library. “%APPDATA.minecraft\bin\natives” net.minecraft.client.Minecraft “dopey
Jan 6th
December 2012
9 posts
1 tag
The workflow
Here are two simple practices that I want to start. The first one is to work off a virtual machine locally for every project that I have. This should make it easier to share work, and should keep the speed of development up. Ideally I would learn about puppet or chef, but having an imperfect virtual machine beats nothing. The second one is to use cucumber more aggressively. Even if the tests...
Dec 30th
1 note
2 tags
Fun task for today: learning how to use require.js
When I scanned quickly on the toolset for JavaScript, I found that require.js was mentioned often. Having lived through a project that had JavaScript library hell, require.js seems attractive. I started setting up my personal project using require.js, but it was already late, so I had to stop. I am going to attempt to get a basic version going tonight.
Dec 30th
2 tags
JavaScript: underscore.js
I remember going to a conference where a person told me about underscore.js . He told me it was this handy library that had a bunch of missing properties from JavaScript. He also claimed that it made JavaScript more functional in practical use. I finally got to use it yesterday. He was right.
Dec 29th
1 note
2 tags
JavaScript: using null as a placeholder in object...
I ran into this use for null while BDDing a personal project. I wanted to create a placeholder property, test that it wasn’t assigned correctly, and then give it the right initial assignment. But when I ran the test, it said that the property didn’t exist. Well, after a few tries, I attempted to set the property to null. And then it worked. Now, I don’t know exactly how this...
Dec 29th
1 tag
JavaScript: hoisted functions
I learned this one last night reading “OOP in JS” So, when you declare a function in JavaScript using the function keyword, all of those functions will get hoisted to the top of the scope. What the hell does that last sentences means? What it means in practical terms is that you can use a function within an object in Javascript before you declared it. var funkyMarshmallow = new...
Dec 28th
1 tag
Javascript: The value and uses of null
In C# and other related languages null mean a variable that hasn’t been assigned yet. Not so in JavaScript. When a variable hasn’t been set yet it has the value undefined. Undefined is different from null. So what is null? And what is it used for? It has to do with scope. A variable set to null is known in the scope. Undefined means that the scope doesn’t know of the existence...
Dec 28th
2 tags
JavaScript: use the 'in' operator to check...
A couple of days ago I blogged about how one should use the following pattern when checking of a function parameter exists: function baking(ingredients){ if (ingredients){ mix(ingredients); } .... } Yesterday I read how if you are trying to check for the existence of a property in an object, then one must change the above conditional to using the in operator if ("flour" ...
Dec 28th
1 note
2 tags
Avoid if (variable != null) in JavaScript
When we write code like this: function awesomize(dullStuff){ if (dullStuff != null){ turnIntoUnicorn(dullStuff); } } What we mean is, “check that dullStuff exists. If it does, then process it.” This is a natural piece of code that one writes, especially if one comes from C# and related languages. Unfortunately it doesn’t mean what we think it means. ...
Dec 27th
1 note
2 tags
Another dive into JavaScript
I have been working a lot with JavaScript recently. I suspect I will do so more and more. I have found of the trickier areas of JavaScript, and I have been reading books on the subject in a hectic manner. JavaScript has changed a lot. Techniques that used to be esoteric and now considered bare-minimum skills. There are a lot better tools, and there are are a huge number of frameworks and...
Dec 26th
November 2012
4 posts
The art in software craftsmanship
Is becoming better at it while having to deliver features on time.
Nov 27th
Just enough Markup
Just enough: Markdown Maybe you need to learn just enough markdown to get you to write documents. You don’t mind checking a reference page now and then, but you do want to learn just enough to be productive. This is the guide. It is based on my experience. This takes care of most of my markup needs. Hopefully it will be enough so that after reading this you may need to look up only a few...
Nov 25th
2 tags
rspec book. Chapter 3
I am currently reading the rspec book. I just started reading the first few chapters and I am quite impressed. More than just a a tutorial on rspec, it is a tutorial on BDD using rspec and cucumber. But the focus is not on the tool as much as it is on the techniques. Chapter 3 covers how to write features for cucumber. However, what it truly is is a chapter on how to write feature scenarios as a...
Nov 24th
More self-reflexion on learning
I can go on learning binges that last about 20 days I learn best through tasks I learn best through blogging So, I am gonig to try to go with the grain rather than against it. These are the things I want to do: One arduino Learn about wpf and xaml rspec book Diving into C# book Haskell diving into ruby dependency injection in C# continuous integration OOP game programming Task...
Nov 23rd
1 note
October 2012
8 posts
2 tags
Ruby is so beautiful. So where does the...
I was writing a game yesterday using ruby. And the code and the experience was so pleasurable. It was such a delight. I started wondering why I associate ruby with frustration. Then I realized what it was: ruby is the main language that I use to learn techniques. And learning is frustrating.
Oct 25th
2 notes
1 tag
Lamecraft, iteration 3: the map
Okay, so iteration two ended up being about making the block instead of the user bar. right now Steve will only have use of one item. So the next step is the tricky one, the one that will make the game work or fail big time. I have to figure out how to create a map. I also failed to say that I am building this in Scratch. Why? Because I just want to create something quick rather than well...
Oct 24th
1 tag
Lamecraft, iteration 2:
This time I will create the block using bar. Since this is a lame ripoff, it will only have four allowable slots.
Oct 23rd
1 tag
Lamecraft, iteration 1: Steve moves!
Goal is to 1: Make lame picture of steve 2: Make him move around
Oct 22nd
1 tag
Lamecraft, the goals
So, I want to make a quick, lame 2D version of minecraft. I am calling it Lamecraft because I believe in truth in advertising. Here I will share the long term goals for it: You should be able to craft stuff You should be able to mine It will create random worlds You should be able to use sutff We should have the famous mobs You should be able to build stuff All in glorious 2D! The idea...
Oct 21st
1 tag
Went through another near burnout
Once in a while I get a near miss towards burnout. I just had one of those. I feel better now since I have the urge to program. I want to make another short, fun project. Maybe I can go back to Small Basic and make something fun. Or maybe I can try learning gosu and make a make using that instead. Or something in scratch. Hmm, I can’t decide right now. Maybe I should try to make a 2d...
Oct 20th
2 tags
Lisp challenge 24 -- More Lein issues
I spend some time trying to debug the lein problem. I first thought that I have a problem with reaching the libraries. But I don’t. It seem that the main problem that I have is that I just can’t figure out how to call the libraries that I have download from clojars. I believe that the next step is going to irc and ask around to see what the problem is.
Oct 20th
1 tag
Programming poetry
Programming is like a ballet objects dancing gracefully telling a story through the movement of data.
Oct 12th
September 2012
19 posts
2 tags
Vim, assessment and going to, middle, and bottom...
Okay, so we should start with a self-assessment. I am currently using most of the letter characters together with $ and ^. I am surprised that I can actually use most of the uppercase letter character commands since I haven’t made a point of learning how to use them. The one group that I didn’t use were H L and M. H will take you to the top of the screen. L will tkae you to the...
Sep 27th
1 note
2 tags
Deep practicing Vim
I have been using vim for a while, and I actually use many of the keys, yet I am not doing as well as I would like. So once in a while I will post some notes on how I am trying to improve my use of vim. This time the issue has to do with W B E. I was confused because they pretty much look and act the same as w e b, except when they don’t. By experience I knew that the uppercase ones seem...
Sep 26th
1 tag
Well documented projects
While writing about documentation, I thought which projects are well documented. And by well documented I mean projects where I barely have to ask questions on forums. mailing lists, or irc. PHP I know that there are plenty of PHP haters, but PHP shines in its documentation. I don’t remember ever once having to go to a mailing list to ask a question. Most of what I needed was either on...
Sep 25th
1 tag
Are you RTFMing newbies too much?
If you are answering “RTFM” too much on irc, the mailing list, or the forum, it may indicate the following problems TFM is poorly organized If you keep referring people over and over to the same part of the manual, it may be that the manual is poorly organized and people can’t find the information that they need. Your site search engine may not be working too well either. TFM...
Sep 24th
3 notes
3 tags
Lisp challenge 23 -- more problems with Lein and...
I was going to go to the local meetup, but I ended up being too tired to leave for the meeting. Instead I tried again to work on loading the game libraries to play with them in clojure. It didn’t work. The libraries are on my repository, but I can’t seem to get them working. Tomorrow I will just follow the leiningen tutorial to see if I can get that working. It is frustrating that...
Sep 19th
2 notes
2 tags
When awk is the right tool
Yesterday night I had to create markup based on the US postal abbreviations for US states. I first tried to do it using sed, but it got too complex. The next step up from sed is awk, so I wrote a small awk script. For those who are not familiar, awk is an ancient text manipulation utility from the early years of unix. People gave up on awk once perl came along because perl was a lot more...
Sep 18th
3 tags
lisp challenge 22 -- Packages are not downloadable
I went and asked in the irc for leiningen how I could verify if a package downloaded or not. They told me to check the .m2 folder. I did. Neither one of the libraries that I attempted to download are there. I did find that overtone did download. Strange. I don’t know how I am going to learn the bit of working with java libraries since this part seems to be a lot more challenging than...
Sep 18th
1 note
3 tags
Lisp challenge 21 - Problem with tools
I want to draw pretty pictures with java libraries using clojure. Yet I don’t know if lein is doing its job or I don’t know how to use it. I haven’t tried to the clojure or lein ircs yet, but I am going to break down and just ask them to walk me through the issue since it is the most efficient thing to do. At this point I don’t want to learn the entrails of lein; I just...
Sep 16th
3 tags
Lisp challenge 20 -- Write a parser and...
Or about so once you have installed Dr. Racket. To go to the tutorial/class notes, go here write a parser and interpreter in about 1 hour Yesterday I spent time working on Brown’s Programming Languages materials. They are writing this which contains more information and exercises from the lecture notes. Dr. Racket is a great software. You can download specific version of the Racket...
Sep 11th
3 tags
Lisp challenge 19 -- Clojure interop and slick
There wasn’t that much coding yesterday. I didn’t have that much time to work on programming so the time that I had a dedicated to finding a game library in java and reading about clojure’s Java interop. The game library that I decided on is called slick Why? Because I read recommendations for LWJGL and slick is a wrapper around it. Yesterday I read about clojure’s...
Sep 10th
3 tags
Lisp challenge 18 -- Comfortable writing clojure
In the past three days I have been battling with how to program against abstractions in clojure. I found a solution, and I spent time refactoring and rewriting tests to use abstractions in most of the places where I have state. After I finished doing that I wrote a few new tests and got them to pass. I found that I feel comfortable writing a project that solely is exercised via the test runner....
Sep 9th
3 tags
Lisp challenge 17 -- More abstraction programming...
I had another running into abstraction programming with clojure. This came up when I was coding pacman’s pill representations. I need to store coordinates. At some point I had settled on the following representation {[ -1 2]} which is a set of vectors with two points. At this point I remembered how it is important to code against interfaces and not implementation. So I came up with...
Sep 8th
3 tags
Lisp challenge 16 -- an example of abstracting in...
For my pacman project I had the following implementation of the initial state: defn start-game “starts a game state” [] {:direction ‘left :pacman { :x 0, :y 0} }) I got to the point where I had to refactor direction into :pacman. This broke my some of my tests, which I had program against the specific implementation. Below direction-to returned a modified...
Sep 7th
2 tags
Lisp challenge 15 -- Programming against...
I read this great blog entry on programming against abstractions in clojure. You should go and read it. It is pretty good. The main idea is that one shouldn’t program against implementation but against an abstraction. Now, doing that in OOP is very easy since, depending on the language that you use there may be abstract classes or interfaces, which are templates for how to build objects...
Sep 6th
4 tags
Lisp challenge 14 -- The little semantic things...
So I am writing a pacman in clojure to have something to do while I get the Overtone problems worked out. The day before I started I went to a local software craftsman meeting where we did the pacman kata. I paired with a groovy developer. So we were working through it with a object oriented approach. Having that in mind, I started writing pacman trying to use a similar approach. So I started by...
Sep 5th