Jacob Dalton Log
Fri January 25, 2013
Cleaned up edit page appearance and flow (although the flow is a bit hackish in implementation). Understand facebook link description problem: when you post to graph and supply a description and the link is "alone" (no one else shared it) it will post the description passed in. When the link has been shared by multiple people (I assume this is understood by the url of the link matching) then facebook will look for the meta tags on the page--and not finding these will look for the fist p element on the page greater than 120 characters and scrape the text from that--since we can't easily define meta tags (without aadding a whole other extension) I've put invisible p elements on the page that match the description that is sent...ughh more reasons working with opaque external apis is not fun. A few relatively minor issues persist until beta release is possible--conditional buttons on front page and bug testing for facebook submissions (mostly: what happens if you cancel parts of the submission process while it's happening and how do we want to report back with errors/warnings that occur with email).
Thur January 24, 2013
Added previewing to share-with-friends page and moved icon-credits up into the title bar. This page is mostly finished except that facebook posts the wrong link description to the graph.
Wed January 23, 2013
No progress. Worked on taxes. Not feeling well. Trying to fix sleep schedule.
Tue January 22, 2013
Implemented server-side email validation using MediaWiki Sanitizer::validateEmail function. Changed error handling for emails. Met with Brad to talk about app. Suggested launching Beta without email features. Beta work left todo: conditional buttons, edit page flow, share_with_friends page flow (make templating less clunky). General cleanup. Seed videos. Coding should be complete by Friday.
Awesome work Jacob - Aaron
Mon January 21, 2013
Got OpenID working on the test server. Tested facebook successfully. Having trouble sending emails from the test server--although no error messages are emitted.
Fri January 18, 2013
Finished converting to automated mediaWiki database update system. Renamed files from ShareOSE to TrueFans to better reflect current purpose. Created git workflow and uploaded the extension to the test server and successfully updated. Can now push directly to webserver from git.
Thur January 17, 2013
Made great strides towards getting a fully functional test server up an running. http://test.opensourceecology.org/wiki is now upgraded and is mostly identical to primary wiki. OpenID still isn't working--seems there is an issue with permissions on the /tmp directory that prevents extension from saving nonces. LocalSettings.php has also become unweildly. Created a new clean file to allow me pop the debug toolbar up but some clean up seems like it's in order. Ran into an issue with databases -- since I don't have root access to DB server and only wiki db user I'm going to try to wrap database into automated MW way of doing things--this will more tightly couple the code to mediaWiki but there's really not much lost there...the code is already almost pure MediaWiki as is (besides the FE stuff--but BE MVC stuff is all ugo mediaWiki stuff). Got update.php to automatically create db tables (this is really convenient, although not rails convenient). Now have to update DB model (ugly work, will make code uglier) and then I can probably run this in a near clone of the production environment.
Tue January 15, 2013
Continued attempts to get a valid test environment on ose server. Updated test environment on my personal server with updated OpenId extension and new WikiEditor (should probably add these to OSE wiki). Trouble updating ose test server seems like DB user can't create tables or at least new tables...
Sat December 15, 2012
Helped Kavitha and Yoonseo with workshop clean up (sorted all the drill bits). Learned a bit more about making Dal from Kavitha. Helped Aaron create a menu with icons and drop downs for About page.
Fri December 14, 2012
Worked off and on with True Fans App. Showed functionality to Aaron. Helped Yoonseo go to license office and then buy truck in Gladstone. Truck activites took most of day. Went to movie after returning with truck.
Thur December 13, 2012
Slept late and felt better. Rebuilt contacts interface with checkboxes and rewired facebook integration (success). Still lots of code to delete and rough edges to clean up but basics are done. Picked up Aaron from KCI (success).
Goals for tomorrow: help Yoonseo buy truck, clean up facebook integration code, and start work on edit page.
Wed December 12, 2012
Cleaned up the upload video page. Nearly bullet proof now--can't submit videos that aren't finished uploading or processing. Can't submit a form without supplying some video id. Met with Matt over skype. Test of uploading feature went pretty smooth. Matt offered to do some work on the icons and look into email contact importation. Much appreciated! Still not feeling that well. Made some tea that soothes my throat, but seems to be at the expense of my stomach. Cleaned up the finish page. Added playlisting to view video page. Have loading message visible while youtubeUploader.js is loading (and very close to sniffing out the refresh bug...thinking it may have something to do with load order of jQuery and youtube). Cooked spaghetti for dinner. Fixed some minor wiki stuff for Aaron. Overall a productive day despite feeling sick.
Goals for Tomorrow (Thursday): Clean up step 3 Share with Friends: get rid of icons in favor of text (perhaps checkboxes) + interface. Pickup Aaron at airport. Bonus: Clean up edit page and create reasonable flow for edit feature.
Week 4
Tue December 11, 2012
Met with Emily on skype for usability test. Made dinner (mashed potatoes, steamed vegetables, and fried tofu). Made a list of of show stoppers based on Brad and Emily's input. Not feeling well. Went to sleep early.
Mon December 10, 2012
(Writing Tuesday) Fixed wiki template for Aaron. Feeling mildly unwell. Did a food and laundry trip to Cameron. Met with Brad on skype. Did excessive amount of dishes so that I can cook tomorrow.
Sun December 9, 2012
Donkey basketball was a success. Began organizing 4th Hablab annex room as a construction supply room. Started organizing back shelves. Mostly finished...depressing work.
Sat December 8, 2012
Cleared cardboard from the workshop and took in all the recycling and garbage with Yoonseo. White barrels are now empty. Cleaned out the back room a bit and rearranged scrum room. Parker got stove sealed up better, and with the addition of a fan hablab is filled with glorious heat. Cozy warm hands this evening.
Saturday Results: CEB Assembly (effectively successful - workshop organization work). Work on pathways (ambiguously successful) - mapped out plans and flows for creating, editing, and deleting True Fan videos. Added two buttons to the welcome screen. Not much code yet.
Sunday Goals: Donkey basketball. That is all.
Fri December 7, 2012
Today was a good day. Momentum from yesterday carried over and a quiet hablab with few distractions contribute to very good morning session. Cut through 3 important bugs with ease. Return of Gabi and Yoonseo in good spirits also gave me a boost. Cooked spicy peanut egg noodles with fried tofu and with butternut squash porridge. Served at 7:30pm. Squash is rather time consuming but also quite good...need a better way to cut the skin off--sharper knife or very sharp potato peeler like device. Took a while to get the evening session going again, especially since i was reading youtube api docs that seemed to lack some necessary details (turns out the javascript youtube player can only load a playlist onReady but it can load a single video onYoutubeIframeApiReady() event. Why? Don't know...). But another 4am finish and we've got preliminary youtube playlist integration. Still have to figure out where to save these playlists server side (in a file, in the DB, on Youtube server...how do we update the lists...can it be done automagically?). Feeling like if I push really hard that I'll have all the beta release features finished Monday night...but logically that still seems like stretch. Also might be morally obligated to watch Donkey basketball in Maysville gym Sunday.
Friday Goals: Continue extra content development (ambiguous success) - created a list of necessary pages to develop and necessary buttons and links to get complete user info flows but i didn't really generate any content--gonna keep thinking about the content. Build playlist integration (success) - pretty annoying debugging it but pulled through around 3am. Server side stuff and more meta data stuff to sort out but the indefinite time sink of digging into the api is done. Kill a high priority bug (success) - save video dulls and the submit button prevents submission while a video is processing - this can be improved further but the glaring hair pulling problem that Parker revealed has been patched up. Bonus: also created a little blurb modal that can be used to convey help information.
Saturday Goals: Work half day on CEB assembly (probably sleep through beginning). Work on create video, edit video, and delete video pathways.
Thur December 6, 2012
Poor start to the day. Was vacuuming in Hablab and we completely lost power. Wrong cord plugged into generator. Hablab powered by inconsistent power from loud blue generator - avoided using computer during the day. Did laundry in Cameron with Tristan. Parker and Tristan got two UPS with voltage regulation up and running, and I got my work space tapped into better juice. Still, intermittent work during daylight hours with frequent interruption and poor concentration on my part. Able to get lots of work done after everyone went to bed.
Thursday Goals: Estimate feature release payoff (failed) - started to plan extra content that needs to be added and other web design additions, but not really sure I can accurately estimate the time it will take to rework them. I'll continue to working, but only estimate time/feature tradeoff when I run out of obvious work to finish. Kill 1 show stopper bug and 1 high priority bug (success) - updated the directions for profile flow (show stopper). No more temporary directions. Youtube uploader no longer spits out meaningless alert messages on errors (high priority). Now we have a useful modal error message that pops up. Bonus: Knocked down a medium priority bug - correct highlighting of steps for modal direction windows. Do laundry in Cameron (success).
Friday Goals: Continue on extra content development (probably won't finish). Build playlist integration (show stopper feature addition). Kill another high priority bug (likely: dull save video while processing upload to youtube).
Wed December 5, 2012
One of those days where something following something simple goes down a rabbit hole to wonderland. Was able to knock off only 1 show stopper today (and 1 or 2 medium priority tasks) -- created a credit page for The Noun Project icons that are being used. However this lead to resolve lingering inconsistencies between the modal windows/divs that perform various user interface tasks. This lead to rewriting significant pieces of html, css and javascript to get everything to act consistently. Work was very frustrating during the day time but gained a lot momentum and efficiency during the night cap. Tried to cook dinner Kavitha style- Dal and Butternut Squash porridge. Dal turned out decent and Butternut Squash turned out well. Helped Yoonseo up his firefox game (custom hotkeys, greasemonkey, yousabletubefix, and download status bar addons). The cold has returned, but I was more prepared than before. Solar gain through the window during the day and thin gloves for the night. Feeling like I lack a project owner to report to. Lots of tedious work ahead. It would be nice to get some positive feedback to catapult me through these fastidious days.
Wednesday Goals: Estimate feature release/payoff (failed); knock down 2 show stopper bugs (partial success - finished 1 + some lesser bugs). Did a lot of work today, but made much less progress than I anticipated. Concentration earlier in the day was suboptimal, but end of the day was pretty good.
Thursday Goals: Estimate feature release/payoff, kill 1 show stopper bug, and high priority bug, do laundry in Cameron; bonus points: more show stoppers and more high priority bugs killed.
- Week 3
Tue December 4, 2012
Good day of consistent work. Yesterday's preparation payed off. Was able to record usabilty test with Matt at high quality. Took really long time to encode video and upload, but it's a good start and shows that remote usability testing is possible (lots of tweaks ahead, though). Aggregated info from 3 usability sessions into a single document (Usability Report 1) and created a plan for beta release (Beta Release Requirements). Given the testing so far, I think that twitter integration is of lower priority than brainstorming or teleprompting features. Also I face a relatively volatile task of created reworked pages for links off of video viewing pages - this has to be looked into soon, so that I can gauge what this means in terms of release date. I originally anticipated that a single person was responsible for website promotions and that there would be some sort of help in rebuilding the information that video viewers would be directed to. That this is not true and that I could potentially be facing website redesign that could spiral into more work needs to be mitigated by finding some minimum amount of adequate work. However the quality of the app is dependent upon this information being high quality. I'll need to investigate this more tomorrow. Also, helped Parker and Tristan deconstruct power cube for decon/recon video. Nice to get more contact with power cube. Updated True Fans Mircofunding App wiki page.
Tuesday Goals: Test with Matt (success), uploaded video + usability report (sucess), no work on usability update (failed) - decided to work more on strategy today rather than code. I want to reevaluate schedule tomorrow and see what I'm on track based on what features I can add. This should pressure me to decide what adds real value to the app rather than looks like shiny delicious programming/design endeavour.
Wednesday Goals: Estimate feature to release time payoff for outstanding work and knock down 2 Show Stopper grade issues (see Beta Release Requirements for examples).
Week 3 Goals: Try to get FeF True Fan videos after Friday meeting (hopefully team will be in high spirits) during the weekend. Clean up all high priority bugs and clean up all easy usability paper cuts with at least some solution (focus getting a solution rather than pursuing the optimal solution). I no longer consider Twitter integration to be a realease feature. Revising existing pages so that the correct information flows exists now has a much higher priority.
Mon December 3, 2012
Slept short in attempt to getting sleep scheduled more aligned with daylight. Got Yoonseo to do usability test over skype and discovered lots of probelms with recording skype voice + video. Although recordmydesktop works quite well in stock Ubuntu, Kubuntu (and thus KDE) does not come with a work pulseaudio (everything appears to alsa) making it impossible for multiple applications to share an audio stream. Several hours were spent debugging this (this is a tough problem to fix--integration level issue with many possible solutions and dead ends). Was able to cook dinner within a reasonable time frame and with non-trivial leftovers. Made a potato-leek-tofu stew. One of the best things I've cooked so far. Extra clean kitchen helped things along and cooking stew in a big pot minimized dish usage (able to clean all dishes before serving). Served pretty much on time too :). Was able to finish debugging recording issues after dinner (basic solution: install pulseaudio and gnome-media (sound recorder), start pulseaudio, reconfigure phonon audio hardware in system settings, use pavucontrol to pipe internal soundcard into sound recorder, then do recordmydesktop on skype -- checking levels in pavucontrol to make sure everything is working...not fun but excellent result that records mic sound and computer sound). Set up remote user test with Matt for tomorrow at 1pm. Took notes on Parker test and Yoonseo test. Basic issues - ambiguity of 'Upload' and 'Save Video' and unobvious difference between quotation message and personal friend message. Need to tweak instructions and prevent people from clicking 'Save Video' before uploading. Will try to add this before test with Matt, but 50-50 that that's actually possible. This was one of the first days where all aspects of time were basically accounted for (although recordmydesktop-skype-pulseaudio was a standard unpredictable time sink).
Tuesday Goals: User test with Matt - recorded + notes and work on usability update 2; bonus points: look in to playlisting. No cooking tomorrow, so there should be lots of time.
Sun December 2, 2012
(Writing on Monday) Warm again. Pretty relaxing day, or at least started so. More contract and org talk in hablab. Played Settler's of Catan and then taught Yoonseo and Gabi Tichu. Offered to deliver diagrams/papers to Marcin. Left at 7pm and met Kavitha in Kearney. Very foggy again, but I knew the route better. returned to Hablab around 9:30. No time for remote testing and Tristan was sleeping, so I couldn't do local user test either. Yoonseo gave me an intro to the Arduino. Tried to think of interesting ways to make the led blink--made a program to interatively "discover prime numbers by blinking on potential primes and and not blinking otherwise. Very fun. Looking forward to doing more work with Arduino. Have CEB code to look at. Got very OCD at night and started organizing things like mad. Hablab kitchen is much much cleaner. Improved living room and bathroom too. Did all of the dishes.
Sunday goals: successful relaxation. Probably could've hassled other FeFers for a test but relaxation was probably worth it. Trip to Kearney cost about 3 hours ish. Probably would've coded else.
Sat December 1, 2012
Strange warm day. Organizational structure talks continue. Aaron had me change main website -- now have basic knowledge of web administration system the site is based on and basic understanding of home page implementation (php templating). Cold hands again due to lack of sun. Cleaned up pallets behind hablab, folded up a couple stray pieces of tarp, and pulled brick rollers out of ditch. Conducted first usability test with Parker and created a video of it (about 20 minutes). Considering putting it up on the wiki as documentation. Made a Walmart run for wider range of foods and basic goods (head lamp, hooks, and safety glasses). Extremely foggy night had to drive slow and missed turns multiple times. Got lots of tofu, egg noodles, canned goods...should be able to avoid any grocery runs before cooking now. Unable to do laundry because I couldn't find laundromat (nearly impossible to read street signs in the fog).
Saturday goals: 2x usability tests - completed 1. Not really able to peel off Gabi or Yoonseo who were busy looking into contracts. Not really much I could do about it -- should be easy to remedy tomorrow. Code cleanup on facebook.js -- didn't get to. Contract distractions and website diversion from Aaron burnt that time (which wasn't wasted time, just not accounted for as planned). Didn't get to bonus remote usability test. I would like to do a practice test through skype at FeF before doing a remote one -- really don't want to waste a volunteer's time.
Sunday goals: 1 FeF usability test over skype. 1 remote test. Relax. Feeling bored: clean up facebook.js
Fri November 30, 2012
Moved desk into living room between stove and window. Big improvement in hand comfort. Natural light is additional plus. Spent some time responding to message about collaborative production run situation. Before dinner figured out how to login once to facebook. Took longer than expected due to ambiguous documentation (always a problem with facebook). Wasn't able to debug code due to rare github outage (considered uploading direct to webserver, but didn't think it was worth the effort). Pivoted to watching Steve Krug's example usability test video. Very helpful. Downloaded example script. Sent email to two usability test volunteers. Cooked dinner. Wheat spaghetti, hash browns, and spinach salad (prepped by Gabi) with shallot and clementine dressing. Hash browns took way way too long. Attempted to boil and flash fry but boiling took a long time and so did flash frying. I should probably avoid potatoes if I want to cook quickly. Also trying to boil shredded potatoes is somewhat hopeless due to starch in the water (or at least hopeless to strain). Going to cook dal with rice next time. Hopefully I can get the cook time down to an hour--perhaps I can start early. Night time work session went pretty smooth. Was able to write entire usability script (link attached) and do some debugging on facebook.js. Interface is stable and ready to test, but more debugging is certainly necessary. Yesterday goals: code cleanup - partially successful; message sending usability improvements - partially successful; usability interview script - successful (but after dinner); cook dinner in 1 hour or less - abject failure due to hash browns (other parts were ready at 7). The time in the morning spent on communications (mine and talking with others) bit out about 1.5 hours. Poor FB docs and github outage also cost me (although poor facebook docs was already a known factor). Still need more discipline on cooking and also more options for food. Plan to go to Cameron in coming days and get some tofu + various other important goods to increase cooking options. Goals for Saturday: 2x hallway usability tests with FeFers and code cleanup in facebook.js. Bonus points: 1 remote usability test.
Thur November 29, 2012
Awoke refreshed. New person on the couch in Hablab - Colby. No scrum and uncordinated Hablab team. Beautiful day. Colby seems to have helped cool things down. Intermittent programming during the day led to intermittent but steady progress. Bad circulation + cold hablab has to be delt with. Need some thin gloves with the finger tips cutout. Glass desktop is also suboptimal given the hablab temp. Kavitha made dinner, and talked with Colby and Parker extensively about company structure which seemed really helpful and enlightening. Would like to download Colby's brain... Able to pop back in and solve a couple issues before sleep. Message sending interface is nearly finished and my head's clear. Gonna smooth out a couple usability inconveniences tomorrow (facebook only logs in once!), and then pivot to remote usability testing. Maybe I can snag a Factor E Farmer for a quick hallway usability test or 2 tomorrow. Right now I'm about 2 days behind schedule. Since there's no production run this weekend I think I can reclaim one of those days, but I have to be cautious and not work too hard and burnout. Friday goals--code cleanup, message sending usability improvements, and usability interview scripts before dinner. Cook dinner in 1 hour or less, and then plan out remote usability testing as best I can.
Wed November 28, 2012
(Writing in retrospect.) This was my absolute worst day in terms of progress. Suffering from low motivation and constant interruption. Made some progress to finishing submission interface, but unable to concentrate. gChat with Kavitha and and food run cut evening very short (work stopped at around 4pm). Cooking, meeting, and dishes took the rest of the night. Meeting seem to start okay but ended poorly. Extremely glad to see Kavitha. Low motivation. Went to bed early.
- Week 2
Tue November 27, 2012
(Writing in retrospect.) Before dinner work made good progress and finished the unified message input interface to a point of satisfacion. After dinner meeting to discuss Collaborative Production Runs went poorly and sent Hablab team into disarray. Night time development period was spent discussing a way to resolve issues. Unable to refocus and return to development.
Mon November 26, 2012
Rose decently early and added to scrum questions (how do we change stuff on website, do we need approval to change stuff, can we earmark True Fans funds, can people make videos for the True Fans app and what is the tone of the videos that they'd like to make...). Created a good plan for coding the facebook interface. Had scrum meeting but wasn't able to ask questions due to infrastructure priorities. Worked outside on insulation apron for about an hour and a half. Then went in to start coding at about 3pm. Designed a quality unified interface for facebook and email (thinking of moving twitter to a different step). 5pm started the dinner process--found a good recipe for spicy peanut noodles and went to Dungy's with Tristan to get extra ingredients. Tristan split the food tab ($30 - $15 each) with me. Egg noodles cook fast and was able to finish cooing by around 7:15. Did the dishes afterwards (bad choice--took way too much time). Started coding again at 9pm. About half done with unified interface. I expect 1 more full day of coding and facebook integration should be mostly complete (although I may forgo posting actions for now as it might be technically challenging to change the meta tags of a wiki page...). Goal is to finish facebook integration tomorrow, write user testing scripts and do 'hallway' testing on Wednesday, and do remote user tests on Thursday. Considering pushing twitter integration to post-release and freezing the features after I get play lists working. I'm concerned that I going to get tied up redesigning various pages that our video landing pages link to. It doesn't seem that responsibility for the content of webpages clearly rests in any one persons hands. This should change.
Sun November 25, 2012
Rest day. Slept in a bit and went to a cafe in Cameron with FeFers. Walked around the farm and tried to gage most important tasks still unfinished. Talked to Parker about True Fans plans. Went on a run for fire wood that ended up being a fiasco and took up a lot of time (but on the bright side was kind of good team building expereince). Wrote up some questions for scrum meeting on Monday.
Sat November 24, 2012
Collaborative Production Run Day 2. Worked on aligning primary and secondary and secondary arms of frame. Problems with documentation lead to retorching the holes. Lots of band saw cutting. Lots of lifting and moving things. Worked on one of the vertical plates in the compression chamber. Swept out half of the workshop.
Fri November 23, 2012
Collaborative Production Run Day 1. Setup welder. Did lots of grinding on hopper and primary arms. Hole punched box alignment pieces. Ran band saw and iron worker. Did some mag drilling. Welded u channel nuts on u-channel.
Thur November 22, 2012
Beautiful day -- tidied up a bit in front of hablab (organized pallets, wood, irrigation hose) and started to grade area for insulation apron. Kavitha made an excellent Thanksgiving dinner. True Fans App: More feedback emails (BTC and another testing volunteer - Emily). Started facebook integration. Made slightly less progress than hoped but preliminary integration is up on test server--need to create an interface now. Need to do some backend work to generate adequate meta tags for facebook actions. I expect facebook integration to take one more day, but I could easily hit a snag on the meta tags so I'd plan a day and a half +/- half a day. Afterwards: 1) scripts/teleprompting, 2) twitter, and 3) playlists.
Wed November 21, 2012
Met with Marcin. Attended team meeting. Toured farm (extra work oppurtunities-insulation apron and light screen). Made dinner (spinach potatoes with rice made by Kavitha). True Fans App: sent some feedback emails (to Chuck and Matt). Usability improvements -- upload page no longer has optional inputs visible by default, it's impossible to double submit the form, and changed viewing location of status messages on upload page. Plan to work on facebook integration tomorrow.
Tues November 20, 2012
Arrived at FeF. No issues driving. Set up room and ready to go. Meeting tomorrow with Marcin.
DPV Work Schedule
Cook MWF.
- Pre-Arrival: Polished prototype and blog draft (November 16th).
- Week 1: Meeting, test the prototype with the team at FeF, bug-fixes, and collect feedback.
- Success metric: x[Blog post], x[strategy meeting], x[first usability tests], and x[usability update 1].
- Week 2: Make FeF videos, x [collect feedback from stakeholders], feature freeze, and update.
- Success metric: FeF videos, completed twitter and play list features, email to sample subset of True Fans, and usability update 2.
- Week 3: Beta release to a subset of True Fans, prep live server, and update.
- Success metric: Remote user testing report and usability update 3.
- Week 4: Full release via blog post, analyze, and update.
- Success metric: Public release, initial analysis, and usability update 4.
See also Jacob Dalton
See also Jacob Dalton Contract.