Showing posts with label postgresql. Show all posts
Showing posts with label postgresql. Show all posts

Sunday, 23 March 2014

WDI Progress Update - Final Project (Littlehumans), Brainstorming, Mock Interviews, Codium

Challenges
  • Littlehumans (Medical App for Midwives and Parents of New Born Children)
    • Problems faced
      • Combined OAuth Login (Facebook, Twitter, Google) with Devise spend all day Saturday trying to get it to work in Production environment (managed to get Google, Facebook, and Twitter to work)
      • See 'About Us' page at the Littlehumans website for other challenges
  • Dancing at Karaoke!
Progress @ General Assembly (GA)
  • Littlehumans Final Project
    • Heroku Link: Littlehumans App    
    • Tech Stack: View the 'About Us' page at the link above
    • Purpose: Midwife app for Midwives and Parents to track and share New Born Baby information and key Moments (input from my partner who is a professional midwife)
  • Sunday Javascript - with Daniel Tsui
    • Challenging Tests
    • Immediately Invoked Function (IIFE)
    • .Then
    • Hoisting
    • First Class Citizen
  • Javascript Ecosystem - Presentation by Je Turnbull
    • Multi-paradigm (MPM) and styles 
    • Automation and Task Runners
    • Package Management
    • JS Essential Knowledge and Tools
    • Front-end Job Questions
    • JS Testing
    • Scope and Closures
    • Recommended Books
  • Codium Group Project
    • Twitter Gem - Solved ability to scrape blog posts
Curiosity

Friday, 14 March 2014

WDI Progress Update - Advanced Rails Caching, SASS, Websockets, Javascript Evolution & Frameworks, Group Project Implementation

Challenges
  • Backbone.js and Burning Airlines - 6 hrs preparing Burning Airlines MVC for Flights on 13th Mar:
    • Problems fixed thanks to help from team in the morning:
      • Missing from app.js
        • Async call to fetch flight collection model and Router
      • Correction in FlightsController
        • 'respond_with @flights' instead of 'respond_with :json => @flights' to prevent embedded JSON
      • Removing JBuilder.json file that was merged after git pull from master, and caused only id and url to appear at URL /flights/flights.json (code previously pushed compiled successfully and listed flights)
      • Binding(this) to enable Search button functionality for on-click 
      • Debugging in Chrome Inspect Element using CMD+' to skip to next line of code for testing, and hovering over variables to show current value 
  • Pomodoro Time Management

Progress @ General Assembly (GA)
  • Group Airline Project (Implementation)
    • Team: Marcus Hoile, Sam Peters, Alberto Forni, Luke Schoen
  • Javascript Evolution
    • JS Framework Types: 
      • Full-stack - Derby (real-time apps), Sails (like Rails), Meteor (new with potential security issues)
      • Front-end - Backbone.js, Marionette, Knockout, React, CanJS
      • Front-end + Datamining - Angular, Ember
      • Back-end frameworks, Websockets, 
      • Templating - Handlebars
      • Other: Batman, Express Polymer, Socketstream, Clojure
    • Websockets (Socket.io to manage HTML5 websockets, real-time control to sync broadcast changes without overhead HTTP)
    • Proxy Servers - NGrok
    • Separate Loading Templates - .jst.ejs and Global Namespaces
  • Caching in Rails
    • Client-side & Server-side (Page, Action, Fragment)
    • ActionPageCaching GEM
    • ActionPackCaching GEM
    • Rake Task Sweepers
    • SQL Query Caching
    • Memcache, Nullcache
  • SASS (Nested, Interpolating Content, Variables, Mixins, Cross-File Mixins, Inheritance, Pseudo Selectors, Asset Pipeline, Image-Path and Asset-Path for Production)
  • Presentation TankStream Labs
    • Key Takeaways:
      • Lifestyle & Work
        • Startup Org Fit Evaluation Essentials
        • Recording Skills
        • Cocurricular and Coding
      • Language Agility
        • Erlang, Haskell
      • Terminology & Tools
        • Strong Parameters
        • Async Processing and Delays (SidekiQ + Reddis)
        • Scheduling Processes (Cron + Whenever)
        • XML Parsing (Nokogiri)
        • PDF (Prawn, PDFQueue)
        • Debugging (Pry)
        • Uploading Files (Paperclip, Carrierwave)
        • Sublime GEMS (GEM Browser, Git Extensions)
        • JSON (JBuilder, JSON Serializers, Draper)
        • Image Resizing (LibXML image munging, Image Magic)
        • Communicate Validation in Natural Language (Chronic, Chronorails GEM)
Purchases
Events
  • Fisburners - Chat with Mark (Movie guru), met David (recommended Founders Institute), Dimitri, Jenny, and Matthews B'day

Wednesday, 12 March 2014

WDI Progress Update - Group Project (Burning Airlines), Backbone.js, TDD, BDD, Node.js

Progress @ General Assembly (GA)
  • Group Airline Project (Planning)
  • Backbone.js (JSON, Namespacing, View Event Management, Dynamic Underscore Templates, Prototypal Inheritance, View Extensions, MVC, InspectElement Testing, Memory Leaks, Zombie Events, Seperation of Concerns, Object Properties, Backbone View Element (EL) Property, Customising Backbone Element, Models (Getters, Setter Methods), Collections, Routers, Slugs, Rails and Node.js, jBuilder)
  • Test Driven Development (TDD) (Test Unit, RSpec, Mocha, Mini Test, Meta Programming, Unit Tests, Functional Tests, Integration Tests, TestHelper, params.to_yaml, Fake Devise Login)
  • Behaviour Driven Development (BDD)
  • Gems (Shoulda, Mocha, Turn, Simplecov)
  • Mailers
  • Polymorphic Joins/Associations (___ABLE, using Rails Console Testing)
  • Self Joins 
  • Security 
  • Presentation - Interview Process, Mock Interview, Elevator Pitches - Tarun Mookley, Tiffany McHugh
  • Presentation - Node.js - Vlad Filippov
    • Single Page Apps
    • JSON API's
    • Modules
    • Grunt, JSHint (Code Quality)
    • PhantomJS (Screenshots Progress)
    • CSS Preprocessors (Stylus)
Events
  • Sydinmotion.com (Garrett IOS next Tuesday)
  • ROROSyd 11 Mar - Met Mark from Coogee, Mick (SysAdmin recommended SLUG Meetup, tail -f flow)
  • Sydney Linux Meetup Group (SLUG) SLUG Meetup - 6pm 28th Mar
Purchases
  • TeamTreeHouse.com (Basic account)
Curiosity
  • Sphero3D (toy)
  • Fitnesse (create rake feature in Gem)
  • Snapsearch.io
  • Dash Docsets, Dash Cheatsheets
  • Kitchen.ci for Chef
  • Vagrantup.com
  • Bash Books
  • NIEM
  • Startups
    • Fishburners
    • PushStart
    • StartMate
    • ATP
    • Muru D
    • River City Labs
    • Resource 88
    • Tank Stream Labs
    • TheHub
    • WeCo
    • York Butter Factory
  • Training: TeamTreeHouse, PluralSite

Saturday, 1 March 2014

WDI Progress Update - Presentations (Group Project)

Challenges:
  1. Reading "Agile Development with Rails 4" this weekend
    • Core:
      • Unless, Until, If, While 
      • Pass Block as Named Parameter
      • Exceptions, Rescue
      • Instance Variables, Convenience Methods,
      • Public, Private, Protected Methods
      • Modules and Helper Methods
      • YAML, Marshalling Objects, Sessions
      • Ruby Idioms
      • File Relative Expand Path Method
      • Aliasing
    • Shopping Cart App
      • Preliminary Analysis
        • Incremental Development
        • Use Cases, Different Actors
        • Iteration Feedback
        • Page Flow for each Actor
        • Data Diagrams for App
      • Create App
        • Create Database for App Product Maintenance
        • Nested CSS matching each Controller
        • Git Ignore
      • Validation and Unit Testing
        • Validation before write to DB
        • Unit Test Models Test Infrastructure
        • MiniTest Unit Framework subclass TestCase
        • Rake Test Models
        • Test Fixtures and YAML Format
        • Associate based Stories for Fixture Names
        • Using Test DB vs Development DB
        • Up to Page 105 / 439
    • Ruby Quick Ref (Range, RegEx, FileIO, Var, Cmd Line, IRB, Operator uses, Control method uses, Invoking Methods, Defining Class/Methods/Modules, Access Restrictions, Accessors, Aliasing, Procs, Closures, Exception Catch/Throw/Raise/Rescue, MiniTest)
Progress @ General Assembly (GA)
  • Group Project Presentations
    • Team #1 - Autism Connect Autismconnect.herokuapp.com (Sam Peters, Emily McCartney, Lauren Krueger, Luke Mesiti) - Key Takeaways
      • Gems: Geocoder, Googlemaps, Strap (payments similar to PayPal), 4em??, Pundit and Cancan (forums)
      • Authentication: OmniAuth (Google), Devise
      • Search: Polymorphic (finds anything with tags many to many)
      • Effects: Paralax (slide toggle left right)
      • Method: Staged implementation with Gems
    • Team #2 - Shared Expense Tracker Wdiexpense.herokuapp.com (Pranava Swaroop, Federico Tagliabue, Marcus Hoile) - Key Takeaways
      • Gems: AASM Management (management of workflow change status of groups/resources), Bootstrap Gem Fonts?
      • Future: Integrate with Whatsapp.com, share on Facebook timeline, Available offline (caching on mobile), Monetise with buying patterns, white label lnegotations, sell to property management firms
      • Method: Daily standups and end of day checkins, Git branching, dealing with Git conflicts merging, teamwork

  • Presentation - Gregory McIntyre, Yourtutor.com.au (Life as a Developer) - Key takeaways:
    • Agile Development - Pair Programming, Productivity and Independence, Conversations and Minutes, Values Visibility, Iron Triangle {Scope, Schedule, and Resources + Quality Centre} > No compromise for Quality, Risk Matrix mitigates to ALARP with Strategies, Burn Down Chart (Jellybean measurement), Kanban (pool model visualisation to minimise waste), Lumpy graph (steady flow rate to customers, resource match issues if lumpy progress), Feedback iterative loop (Assess, Agree, Execute) impacted by Scope changes, Poker Estimation (fold over cards and argue to check assumptions and avoid diminishing returns), Card Walls (Agile workspaces, Post-its easy to track, hard avoid responsibility, issue in distributed teams)
    • Agile Ideals - Deliver something of value everyday
    • TDD - Refactor, Fail, Pass, Repeat
    • BDD - Cust. Feedback Driven, TDD is embedded circles within BDD
    • Continuous Integration and Deployment
    • Latest News: Ruby Weekly, Javascript Daily, Postgres Weekly (signed-up)
Curiosity:

Sunday, 9 February 2014

WDI Progress Update - Trendmyhunch Extras, Google Analytics Client Authentication using Service Account and OAuth

Challenges:
  • Google Analytics Client, Google's API Developers Console (connected!)
  • Google Maps Coordinate API (yet to attempt)
  • Extras add to My Website: Trendmyhunch
    • Collapsing Menu
    • Anchors
    • Select / Unselect All
    • Feedback form (failed on heroku push, stuck on whether i need https://devcenter.heroku.com/articles/sendgrid#ruby-rails)
      • Troubles #1 tried Sample Contact Form on Github, Mailgun and associated documentation, etc (unable to use free SendGrid due to past personal income issues), might have revert back to PHP! Yikes!!
    • Authentication with Google Analytics Client using Service Account and OAuth! (noted the importance of using the correct 8 digit number after the letter 'p' in the URL when in the Analytics Account Settings of the correct App!! didn't realise this initially and was getting error 403)
    • Troubles #2 - Can't upload to Github to mirror pushes to Heroku! Bugger...
  • Important Note: Gem Garb could have saved me a lot of time connecting to Google Analytics! 
  • Played around with dashing, puma server, rufus scheduler, and redis, and rendered my heroku site useless (site still works on local server though...)  ----> discovered that the reason it wasn't working on Heroku was because there  were remnance of Dash (which I wasn't using). the error was only exposed when i ran "rails console production". to solve the issue i just opened the /app/jobs/sample.rb file and commented the whole file.

~/Documents/w5d1_project/ideas_app/trendmyhunch ✗ master ∴ rails consoleLoading development environment (Rails 4.0.2)2.1.0 :001 > exit~/Documents/w5d1_project/ideas_app/trendmyhunch ✗ master ∴ rails console production/Users/Luke/Documents/w5d1_project/ideas_app/trendmyhunch/app/jobs/sample.rb:3:in `<top (required)>': uninitialized constant Dashing (NameError)


Progress @ General Assembly (GA):
  • Analytics (Conditionally included Analytics)

Curiosity:
  • Segment.io

Saturday, 8 February 2014

WDI Progress Update - Trendmyhunch Project Launched, Feedback forms, 'What The Trend API', 'Google Visualization API', CSV to PSQL, Example Code

Challenges:
  • Homework:  Email Production using SendGrid and ActionMailer, Feedback form (using Get Satisfaction, UserVoice), Review Github Code of other students 
  • Want to Try: Redcarpet, Javascript tutorials
  • Example Code #1 (using 'trends.format' JSON hash from What The Trend API):
              Testing Method: Pry
              Try it on My Website: Trendmyhunch (beta only so follow the instructions carefully!)

          New Method inside IdeasController.rb
          Modify Sample Google Visualization API code (obtained here)
         
          Please email me if interested..
  • Example Code #2 (loading contents of .CSV files into PSQL database):
         Please email me if interested...

Progress @ General Assembly (GA):


Contributions to Developer Community 

Sunday, 26 January 2014

WDI Progress Update - Ruby, Sinatra, ActiveRecord, Sinatra, PostGreSQL, Rails MVC

Challenges:

  1. Validations, SMTP
  2. Homework bugs!!! 
  3. Data Validation with ActiveRecord
Progress @ General Assembly (GA)
  • Sublime Text 2 (Shift-CMD-R align multiple text lines, CMD+? to comment multiple lines)
  • Ruby (Object Relationship Mapping ORM)
  • Rails (Model View Controller MVC architecture, Deployment to Production using Heroku with GemFile, Scaffolding with database rake migration entire CRUD apps)
  • Ruby Gems - (ActiveRecord, ActiveRecord Associations, HATM, Callbacks, PostGreSQL, Validations, Bundler for deployment)
  • SQL (PostGres app, commands, tables, joins, foreign keys, CRUD)
  • Tapestry Presentation on Front-End Development by Phil Reither
Progress @ Intro to Startup Entrepeneurship
  • Unit 1 finished on 27th Jan !! Next steps: 
    • Unit 1 - Lesson 7 Independent study activities, participate in online forum, create app based on learnings
    • Unit 2 - UX, can't wait to start!!
Events:
  • Attended meetup Startup Sydney on 23rd Jan @GA
Curiosity:
  • Tank Stream Labs (startup community)
  • Behavioural retargeting
  • Gamification
  • RescueTime
  • StrongLoop
  • Grails
  • Universal design principles (accessibility): Haptics, Tactus, Web Content Accessibility Guidelines
  • The World is Flat, Thomas Friedman
  • Trends API
  • CSS animations
  • WebGL
  • WebM format
  • Paralax
  • Caniuse.com (compatibility checker)
  • Flinto.com (IOS Prototypes, Wireframing)
  • Railcasts
Off Topic:
  • Magna Carta