Learning about Single Page Apps

I’ve been looking for a way to sort out Angular, Backbone, Bower, Grunt, Node, NPM, Yeoman and all the other buzzwords that get thrown around for writing a Single Page App for the web. There are many Youtube videos around: these videos stand out as excellent resources.

Leave a comment with a link to other resources, and I’ll add them to this list.

And the H@ckfest results…

What a great weekend! What interesting ideas came from the H@ckfest!

My team, the inforMED project, presented an idea for helping first responders (EMTs, ED triage) to get relevant data on their cell phone/tablet when they first encounter a patient. If the patient has one, the EMT would scan the token (RFID, QR code, NFC, etc) and this would immediately bring up a face sheet that give contact information, current medications, allergies, and advance directives to that they could initiate appropriate treatment.

We won an honorable mention for the CIO Track of the entire competition, and also won a $1,000 prize from Intel. The team members were:

  • Rich Brown
  • Adrian Gropper
  • Jake Mooney
  • Susan Katz Sliski
  • Jessica Wang
  • Joyce Zhang
  • Alice Zielinski
  • Patrick Zummo

What a great team!

RRUL Tests – CeroWrt 3.10.28-14

RRUL charts

[Note: This is an earlier result. Check out the subsequent posting for CeroWrt 3.10.28-16 (above)]

The postings below are a series of charts that were created by the netperf-wrapper program. Note: I don’t know why the upload charts show such fragmentary data.

All charts made with default Queue Discipline: fq_codel, simple.qos script, ingress ECN on, egress ECN off. Variations are primarily with the Link Layer method.

DSL Modem has sync rate of 7616kbps down/864kbps up.

Chart names have the form: Down-Up-dflt-link-try.png where:

  • Down is the entered download speed (kbps)
  • Up is the entered upload speed (kbps)
  • Dflt is the default Queue Discipline as described above
  • Link is None or ATM with the number of overhead bytes [0 | 44]
  • try is an optional second or third attempt

Click on an image to view the entire set in a gallery

Python libraries: requests and multithreading.dummy

Today was a two-fer: I found two interesting techniques for working with Python. I needed to test a web server, and wanted to send concurrent HTTP get requests. (The problem was that the web server was failing sporadically when hit by a browser, even though individual requests for pages always worked.) I found two libraries that allowed me to write the test code in well under an hour.

  • requests library: I’ve tried urllib2, and it’s a royal pain to use. My general reaction to that library is, “All I want to do is send an HTTP query, and check the response, and I have to write all this code?” Kenneth Reitz has refactored the API so that simple things are simple, and (I suspect, although I didn’t test it), complex things are possible. Check it out at: http://requests.readthedocs.org
  • multithreading.dummy library: Because I wanted to send multiple, overlapping HTTP requests, I figured I’d have to get into threading the Python program. Yuck… I found a great article on Medium https://medium.com/building-things-on-the-internet/40e9b2b36148 that showed how to use the (little known) multithreading.dummy API of Python’s standard multithreading module to trivially (as in, four lines of code) multi-thread the requests.