Apr 7 2009

Erlang…again

So tonight I started reading Programming Erlang again.  Well I started it last week too.  I’ll probably be starting again next week as well.  I’ve been so busy with work lately that I’ve found it difficult to study anything out of hours.  Assuming I don’t completely fail at concentrating I’ll be sure to post more about my experience.


Aug 21 2008

Race 3: GossipInto.com

While I’m rethinking OpenBounty I figured another code race would help clear my mind.

GossipInto.com will be my latest attempt at a Facebook application.  I’ve made some small ones previously but not I was happy enough with to release to the world.

The idea of GossipInto.com will be to allow people to gossip and view gossip about their facebook friends anonymously.  I’ve had the domain for a long time as I bought it for a joke site to do with a Toronto social network years ago.

Site: GossipInto.com

Deadline: Sunday August 31st at 1pm GMT+10

Goals:

1. Ability for users to submit gossip and tag people in it.

2. Ability for people to search gossip by user

3. Ability for people to vote on gossip to confirm/deny it

4. Ability to tag gossip by type and browse based on that too


Aug 21 2008

Stealing by the rules.

I use to have a very strong interest in security.  I went to cons, I followed the lists, I studied the texts.  I was hooked.  Then around 7 years ago I just started to lose interest in staying on the cutting edge.  That said I never lost my interest, just my drive in keeping up with the Jones’.

One of the things I was good at though was detecting process flaws.  It’s easy to focus on the coding flaws when working on computer security while missing the flaws built right into the process itself.  It’s a process flaw which is currently keeping OpenBounty from going live and the reason for this post.

In almost every system I build I spend a great deal of time trying to think of attack vectors that I would use if I wanted to break the system.  It was while doing this for OpenBounty that I realized I couldn’t put the site live and I’m still trying to figure out the best solution to the problem I found.  I have a few ideas but I’m being more careful in picking one this time so expect it to be a while before it goes live.

Alright enough background, on with the flaw.  OpenBounty worked by giving users votes based on how much money they contributed to a bounty.  This was done to make it fair so that someone contributing $500 would have more of a say in the final product than someone contributing $1.  The problem I realized is that this leaves the door open for users to buy bounties.

Say bounty A has $500 in it.  Ed comes along, contributes $501 to the bounty, submits a claim with no merit then accepts the claim.  Since he has more votes than everyone else the claim is accepted and Ed walks away with $1001 and everyone else walks away with a dirty taste in their mouth.

I realize now I should have seen this sooner.  Anyhow, for the solutions.  I’ve already disabled the ability to vote on your own claims.  I’ve also added a holding period to the end of voting so that should someone do this the others have a few days to file protests before the bounty is paid.

I’m working on a couple more ideas to preemptively stop this as oppose to the above solutions but I’ll let you know how it goes.


Aug 6 2008

Learning Flex 3

I did say mostly on track.  I took a break today to give my go at learning Flex 3 and by extension ActionScript 3.  It’s going pretty good.  I have 3 pdf books on it I bought which really came in handy since I’ve been without net access lately.  I am getting the hang of it though and have been playing around with a fun little project to really force me to learn it.


Aug 6 2008

Race 2: Update

So openbounty is now functionally complete.  I’m going to spend the rest of my deadline time polishing some parts. In doing the first version I’ve already come up with a number of features I’d like to see in version 2 but I am staying mostly focused on the task at hand.

These races have been doing a lot to keep me focused and have really improved my ability to deliver my own projects on time.


Aug 1 2008

Race 1:Completion

I completed my first race around 8pm on Friday.  I just have to deploy the site now to one of my servers and get started writing the reviews.  In the end I built the site on rails since I’ve been doing a lot of work in PHP lately and wanted a change.

From start to finish I probably spent about 8 hours on the site which I think is pretty good.  The site is nothing complex but the admin panel allows me to add t-shirts very quickly by automatically fetching images from the web and creating the thumbnails using RMagick. 

I also built a basic click tracking system into it that I can extend with proper reports as time permits and traffic requires.


Jul 31 2008

Race 1: The T-Shirt Judge

I bought the T-Shirt Judge site a while ago intending to build a t-shirt rating/review site.  I started it, then ran into some problems with my software which I soon ditched with the intention of rewriting it.  There’s my first mistake and I’ll write about my problems with scorched earth development in a future post.  I’ve set the deadline for this site to be very soon as I already have a good idea of the design and there isn’t that much functionality.  Wish me luck!

Site: tshirtjudge.com

Deadline: Saturday August 2nd at 1pm GMT+10

Goals:

1. Ability to add, rate, and review tshirts

2. Ability for users to comment and rate shirts

3. Comment moderation


Jul 31 2008

Off to the races

I’ve had a lot of extra time to code lately but I find myself going in circles bouncing between projects so starting today I’m going to start code racing.

What I mean by code racing is picking a site, setting a public deadline here then working my ass off to get a working version live by the deadline.

The deadlines will be extremely tight.  I will be working extremely hard, but I’m going to be working smart too.  At the start of each race I’ll pick a site, set the deadline, the set of goals and get started.  At the deadline I’ll be putting up finishing post detailing how I faired, and issues I ran into and what not.

So without further wait.  The first race starts tonight (Which is probably a bad idea since I have to leave in an hour for a party but I’m not scared).


Jul 30 2008

RubyCocoa

Finished up Section 1 of the Pragmatic Programmers book on RubyCocoa today. Seems pretty interesting. I’ve wanted to get back into desktop development for a while now since I’ve been doing purely web development for a number of years and this seems like a great way to go about it. I’m really enjoying it so far though I’ve only just started and spent about an hour screwing around with the small examples trying different things with them.


Jul 27 2008

SansWork updates

So I added the ability to create/add modules to SansWork today. I’ve been working on quite a few sites lately with it and most of them need the same basic things. Modules allow me to provide those things. So far I’ve just implemented the User module and started a Messenger module. Other ones I plan to add later are ones to handle Groups, Forums, and Galleries.