Skip to main content

Chronology of a painter or my weekend with wekendapps


Why? Because programming is fun. Lots of fun. Working as CTO I mostly help organize this fun for others. It’s time to have some fun for myself.

Where? Wekendapps in Santa Clara

When? February 22 to February 24, 2007


Day 1

Started as typical Silicon Valley meet-up, with pizza and bunch of people crowded in small room, event fun was started. Some people came ready and prepared with friends and code snippets. I did not. Anyway crowd (with some help from organizers) gravitated into groups of people with similar skills. Ideas were presented. I liked what David’s idea on searching FB users through their connections and common photo tagging. Started discussing/planning/coding the app.


Day 2

Spent morning socializing. Realized that app we thought about on day one is not viral. David shared another idea – ‘painter’ who will draw a classic masterpiece on user’s profile page over time. Sort of growing gifts but more ‘sophisticated’.

4 p.m. really started to work on the app – put together “project plan” (list of to-do items) and assigned tasks. Plan is to finish the app early Sunday. For the rest of the day (till 2 a.m.) we dug dip into PHP/SQL/CSS/FBML.

12:30 a.m. conversation in the room became more philosophical. Main topic discussed – why do people laugh? Is it because people lose control of themselves?

1:30 a.m. it took me a while to figure out why < href="”link”"> does not work - sleep time.
BIG respect to people who did not leave and stayed for the overnight coding session.


Day 3

9 a.m. we are back. Bagel and coffee are timely. Thank you, organizers.

10 a.m Set up a target to finish coding by 2 p.m. Plenty of time to finish the up (or what we thought)

12 noon realized that we cannot finish by 2 even if we skip the lunch. Skipped the lunch.

2 p.m. uncovering one limitation after another realized that we cannot finish even by 4 p.m.

4 p.m. David added the code to post the painter to user’s profile page. Only dots and occasional lines are visible – no painter, no picture… Started panicking and think about radical change to the design – instead of posting BFML with css – post static images. Thanks to Elsie who saved us from taking that route – it would take forever and ever to finish the app.

5 p.m. Crowd of investors arrived. Asking questions like “do you use PHP libraries?”. All deadlines are passed and we are not finished. Moved to more quit conference room.

6 p.m. Feature complete. Started end-to end testing. Realized that critical functionality (acceptance of the painting after application is installed) does not work. With the tribal knowledge of surrounding people, David figured out what could be done to fix the flaw. Changed DB schema and countless places in the code.

7 p.m. other teams are presenting ... We still working on the code. Promise to organizers that we are close and soon will be ready to present.

7:15 p.m. development server is down… Most of the code is there…

7:25 p.m. server is back

7:30 p.m. moving to “production” – creating production keys and set of files. Integration end-to-testing. Promised that we really-really ready and will come to the main conference room in a minute. App is fully functional

7:45 p.m. testing end-to-end functionality. I want to remove app from my account so that I can test invite-install path. Instead of removing the app from my profile, deleted application all together from the developers environment. Ooops. Should have camera with me to take picture of David.

7:55 app restored

8:05 discussing ‘code freeze’. David still changing message text.

8:15 presentation


P.S.

Side-effect of all of the fun, painter app, http://apps.facebook.com/sendartist/ is up and running.

Enjoy!

Comments

Popular posts from this blog

Facebook Friends Connect

Is a way to extend external sites to provide: FB identity FB friends (relationship) Feed to FB   Demo app at http://www.somethingtoputhere.com/therunaround User experience: login: js login method requiresession(): detects state of usr-FB relationship, log-in into FB if needed. If user has not authorised app - present app auth dialog. If already has session - just go init JS, require session   access FB data: - FBML on external site - use JS FBML parser and replace in browser DOM with FB data - JS based API to get FB data, REST API on the server site. Sessions work accross any API - only small subset of FBML us supported at the moment   adding social content: - use access API   Connections: app developers can suggest connections (using e-mail hash) user get connect request on FB Move content from external sites to FB app can register feed template (3 types of stories) call JS "showfeeddialog" to request user to confirm data sharing on FB. privacy protection: app ca...

Freebase Hack Day

Respect Coin

Respect I think it's time to talk about currency. Let's create a Respect Coin. Step 1. Install OpenZeppelin library  npm install zeppelin-solidity When it comes to coins, I like to use some functions that smart people already implemented and other smart people verified. I think that Zeppelin is a nice collection of Solidity contracts that can be trusted. Let's use the StandardToken contract and use it as a parent class for our own RespectCoin contract. Step 2. Create RespectCoin contract and store it in "contracts/RespectCoin.sol" file  pragma solidity ^0.4.4; import "../node_modules/zeppelin-solidity/contracts/token/StandardToken.sol"; /** * @title RespectCoin * @dev ERC20 Token example, where all tokens are pre-assigned to th e creator. * Note they can later distribute these tokens as they wish using `transfer` and other * `StandardToken` functions. */ contract RespectCoin is StandardToken { string public constant name = ...