Google Support. Where are you?

So my Nexus 4 started acting up 2 weeks ago: the left section of the screen doesn’t respond to touch: essentially anything between the vertical red and blue lines is non-responsive to touch. Watch the video to see it in action.

Screentouches

So I called Google and they advised to do a factory reset, which I did 8 days ago, and proceeded to reply the email I got for my case (which I still have no reply as of today).

Google Case Email

So I gave them a call the following day, which they told me that my device is still under warranty and that their “Termination Team” would get back to me. It’s been a full week since I called them and they have yet to get back to me. 

Call to Google

A twisted idea that came to mind, is that the longer they make me wait, the more chances I have for accidentally dropping my phone and getting it cracked or something that puts it out of warranty, and thus my wanting to document my perfectly fine looking phone (i.e. not physically damaged) just in case they were to try pull this stunt if I do accidentally drop it (I am being too paranoid aren’t I?).

But anyway, Google support, where art thou? Can you please terminate me/my Nexus 4 in a good way?

 

P.S. If Google support is having manpower issues, I wouldn’t mind helping them out to ensure customers aren’t getting left waiting for a week without a response.

Promises and E2E Testing with Protractor – AngularJS Melbourne – 5th August 2014

angular

Event page | Meetup page

Promises

End to End (E2E) testing of JavaScript with JavaScript (Protractor JS)

  • Braiden Judd @pragmaticyclist
  • Slides
  • ProtractorJS Github
  • Similar syntax to Selenium
  • Navigate:
    • browser.get(‘/#/blogs’)
    • browser.refresh()
  • Selecting:
    • element() : single element / first element
    • element.all() : returns an array
    • Examples
      • browser.driver.findElement(by.id(‘ok’)).click();
      • browser.driver.findElement(by.binding(‘blog.title’)).getText();
      • browser.driver.findElement(by.model(‘password’)).sendKeys(‘password’);
      • browser.driver.findElement.all(by.repeater(‘blog in blogs’)).get(0).getText();
  • Events
    • click() : click the element (e.g. button)
    • sendKeys() : type into a text box

Melbourne AWS User Group – 30th July 2014

aws activateEvent page link / Meetup group

AWS Activate

  • From the folks at Amazon
  • AWS Activate
    • Website
    • A program to provide resources to startups: from free tier usage, labs, webinars, support and AWS credit
    • Self-Starter Package: for any startups
    • Portfolio Package: for startups in select accelerators or seed funds. Will be ‘audited’ by Amazon and will be given much better benefits vs Self-Start Package

Cloud Computing in Africa

  • From Thomas Shaw, the tech man behind
  • Providing unique perspectives with regards to security, reliability, scalability of AWS especially compared to local hosting.

Microservices

Other

  • Kestral
    • AWS management console for the iPhone
    • In development by Rob Amos @bok_

 

Introduction to Chef Meetup – 28th July 2014

28th July 2014 – Introduction to Chef held at Sacon Group for the Chef Meetup group

Chef and Chef DK: The Chef Development Kit

chef and chefdk

  • by Michael Ducy (@mfdii), a Global Partner Evangelist at Chef
  • PDF slides
  • Chef essentially enables the “infrastructure as code” devops movement
    • Versionable, testable, and repeatable as application code
    • Relies on reusable definitions known as recipes to automate infrastructure tasks
    • Recipes use building blocks called resources (e.g. file / template / package)
    • Recipes are stored in cookbooks
    • A cookbook is the fundamental unit of configuration and policy distribution
    • Chef server stores your recipes as well as other configuration data
    • Chef client is installed on each node in your network
    • Chef client periodically polls the Chef server for new configurations and applies if necessary
  • Chef DK
    • A component of Chef to enable organizations to develop internal best practices for Cookbook development and testing
    • A curated set of open source tools for Cookbook development
    • Download at http://downloads.getchef.com/chef-dk
  • Tools
    • chef – a new command to make development easier
    • Berkshelf – automatically resolve cookbook dependencies
    • Test Kitchen – framework for integration testing
    • ChefSpec – unit testing of Chef cookbooks
    • Food Critic – linting tool for Chef cookbooks
    • Standard Chef tools – knife, chef-zero, ohai, chef-client
  • Other Links

Kumolus

kumolus

MelbDjango Hackfest – 24th July 2014

24th July 2014 MelbDjango Hackfest held at Common Code and hosted by Curtis Maloney for the MelbDjango Meetup group.

Mostly being newbies and with some people interested in testing, Curtis started off showcasing his new Django Classy Settings before covering some topics on testing and other miscellany

TAkeaways / Links from the night

Buying Guide: USB Battery Packs / Powerbank

Powerbank

USB battery packs / powerbanks (or whatever you call them) are great when you’re out and about and need to charge your devices but there are some features which you should look out for when buying one

  1. Buy from a reputable source
  2. Sufficient capacity
    • You need a powerbank that is capable of charging all your devices and has enough juice to get you through the day
    • Phones: ~2000mAH, 7″ tablets: ~4000mAh, 10″ tablets: ~8000mAh
      (iPhone 5S: 1560mAh / HTC One M8: 2600mAh / Lumia 1520: 3400mAh / S5: 2800mAh / iPad Air 2013: 8820mAh / Nexus 7 2013: 3950mAh)
  3. Output Charge speed
    • Ensure it can charge your device at the best and fastest speed
      • Tablets usually 2A
      • Phones usually 1A
  4. Passthrough ability
    • When the powerbank is being charged when connected to a power outlet, passthrough allows it to charge any device connected to powerbank, straight from the power source and not from the powerbank itself: perfect if you want to leave all your other charges behind and charges all your devices with just a single power outlet! (Note: may want to ensure that it charges at full USB charge speed)
  5. Battery gauge
    • Nice quick way to know how much capacity is left in your powerbank
    • Allows rationing of your charge
  6. Charges via a standard USB cable
    • Being able to charge your powerbank using a standard cable is ideal as proprietary charges can be hard to replace if lost
    • Ideally the same cable as your other devices (my powerbank can charge via miniUSB but all my devices use microUSB so it is one extra cable to bring along)
  7. Multiple USB ports
    • for those with multiple devices (or for sharing with others)
  8. Port positions
    • Some USB cables may be bulkier than others and thus powers that are spaced out are useful so that you can utilise all ports at the same time
    • Ideally all ports on a single side so it can be pocketable or just easily placed on a surface standing up if needed
  9. Charges quickly via USB
    • If allows charging via several methods (e.g. proprietary cable as well as via USB), ensure that it can charge quickly over USB (my Sanyo powerbank charges very slowly over USB)
  10. If it supports passthrough, added bonus ability to maintain proper charge, amperage and voltage when plugged/unplugged from power source
    • This use case comes from using your powerbank as the power source for devices like the Raspberry Pi: you want it to provide the power to the Raspberry Pi and if the power source gets disrupted and you do not wish for the device to get restarted, the powerbank must maintain a proper current/voltage so not to trigger a restart.

Note: a 4000mAh powerbank will not charge a 2000mAh phone battery twice due to inefficiencies, battery health and other factors.