Here are some sample photos from my new Holga Digital camera (downsized to fit on the blog page).
Last year I backed the Holga Digital project on Kickstarter. Here’s my unboxing of my Holga Artist kit with the photos taken by my Samsung Galaxy S5 smartphone.
1. Bubble-wrapped box removed from plastic envelope.
2. Opening the box reveals all the goodies.
3. Flash, two lenses, camera strap, book, postcards and of course multi-colored Holga Digital camera.
4. Batteries not included, you will need two AA batteries.
5. Insert the batteries like so.
6. Close the battery cover.
7. Get the oldest SDcard you have, insert it, then turn on the Holga.
8
Next blog post will include Holga photos!
Back in April 2014 I backed a Kickstarter projected called “Meet OTTO – The Hackable GIF Camera” and finally last month THEY DELIVERED.
The idea was for a camera that takes photos, one frame at a time, and makes animated GIF files as its output. The camera itself came in a fantastic blue case.
So now it’s onto the path of creativity!
What this Kickstarter project shows is how with small Arduino-style technology, the world of gadgets is within your grasp. Here’s a small figure from Archie McPhee’s in Seattle turning around:
The key to using OTTO is to get your creative juices flowing, even in ordinary situations. This kind of product is new, fun, creative and a sign of what is to come by distributing computing elements in all kinds of things.
What will and won’t happen in mobile technology for the year 2015? Our friends at PDXmobile have figured out what will happen and won’t happen in 2015. Don’t you want to know the future?
Is Amazon CEO Jeff Bezos an angel? Certainly Hachette Book Group considers him the devil. PDXmobile has an interesting take in this battle of publisher vs. e-book distributor. You can read it here.
After a great conference experience at Open Source Bridge 2014 I began to scratch my head at exactly what was it I learned?
I don’t mean about how natural and wonderful tolerance and diversity feels, as it is well-practiced at OSB, or how great it is to assemble with technical people with inquisitive minds. I mean what did I get out of the talks themselves? So I decided to write this post based on my notes, to remember what I learned and already knew, kind of like the Scarecrow in the Wizard of Oz when Oz hands him a diploma and he realizes he was a deep thinker all along.
I’m going to avoid mentioning the speaker’s names since I want to keep the emphasis on ideas, but if you want more information about any of these talks check out the sessions or session schedule at OpenSourceBridge.
1. Opening Keynote: Battling Invisible Monsters in Tech
This was a talk mostly about Impostor Syndrome where a person has high actual ability, but a low self-perception of their own ability. For me the interesting contrast was with Dunning-Kruger Effect where the traits are reversed, namely a person has high self-perceived ability and low actual ability. Somehow this effect reminds me of management.
People with Impostor Syndrome tend to push themselves too hard, take on too much and burn out.
Some useful social rules were cribbed from (and attributed to) the Hacker’s School User Manual:
2. Working Effectively with People in Government on Open Source Projects
Government people are smart and well-meaning. There are two basic types of employees: appointees and classified employees.
Appointees
3. Power Tuning Linux: A Case Study
This was a discussion of powertop, a tool that assists you in managing your power consumption on Linux systems.
Overall power consumption for laptops is generally 81% for the screen, 8% for the CPU. The rest is a long tail of other slivers of power consumption.
C-State = state processor uses to be idle. You want to spend more time in the highest C-State, the higher the better. Stay out of using C0, the lowest and most power-consuming C-State.
“powertop –auto-tune” will always tune your system for power. It can be dangerous if device drivers don’t support being managed for power. Ubuntu-certified devices work well for being power-tuned.
4. Get More Contributors! Lessons from the Drupal Ladder
This talk was about the experience of the Drupal Ladder in improving contributions to your open source project.
The Drupal Ladder is a hierarchy of steps, how users can move up the ladder. Essentially it’s a series of HOWTOs people can use by themselves. These HOWTOs start very simple and build on each other.
For generating interest and starting a meeting:
5. OAuth, IndieAuth and the Future of Authorization APIs
Earlier apps forced users to disclose their username and password, so Twitter and Flickr developed and implemented OAuth 1.0 to circumvent this problem. Most providers implement OAuth 2.0 now.
Twitter allowed other apps to post to their site. Quill is a text posting app that posts to your website if your site supports some things. Taproot is another.
For IndieAuth the idea was to reinvent as little as possible, uses HTTPS, easier than cryptography. OAuth 2.0 works on HTTPS and dropped having its own crypto from OAuth). Servers understand HTML forms so use HTML and form-encoded data for content (vs. choosing JSON or XML). Represent users by a URL. Apps are also represented by a URL. Problem with this scenario is that native apps (e.g. on smartphones) would also need some sort of public URL, even if it was a unique “About app” URL.
IndieAuth = OAuth 2.0 + Web Identity Layer (as described above)
Micropub is a vocabulary for creating and editing posts based on Microformats 2 vocabulary. IndieAuth uses authentication by OAuth 2.0 bearer tokens and form-encoded requests. The Micropub endpoint typically lives within your website or CMS (content management system).
Advantage is that all servers-side environments already support form-encoded requests. Disadvantage is that every user now has to have a website (URL).
PIP = Python Package Index.
User the package manager “pip”. To see what’s installed use “pip freeze”.
Python 3 came out in 2008, but default on most systems is still Python 2.
My Macbook AIR with OSX 10.9 (Mavericks) has Python 2.7.5.
Control-L eliminates the line from the command history in the interpreter and clears the line.
ipython is an interpreter that lets you generate notebooks of your command output.
bpython is an interpreter that has tab autocomplete and shows you command options you have as you type.
Control-r in bpython replays all your previous commands.
dir() shows you the strings in a global namespace (known to python code you entered — introspection).
python -i foo.py (lets you debug script in an interactive session)
pdb.set_trace() — places you into python debugger where you can step through lines with “s” for step or “c” for continue.
bpython auto-indents for you (python is whitespace-sensitive).
In Python 3 all strings are unicode while in Python 2 strings are UTF8.
7. How to make generics in C: An adventure in sorting
Open source library code is at https://github.com/swenson/sort
Sorting consists of two things: (1) compare two entries and (2) swap two entries.
Cleverness is knowing the order of comparing things (e.g. how good the sort is).
In C use the concatenation operator ## to make generics out of a series of #define macros. This mechanism effectively lets you reimplement C++ function templates in C.
The sort.h file (from github) is designed for speed, not for debugging — no special debug version. No library, just use the sort.h header file in your projects.
8. OpenStreetWhat? Mapping the World with Open Data
OpenStreetMap was founded in 2004 and is the “Wikipedia for Maps”. OpenStreetMap is not just maps, but also the data.
www.openstreetmap.org
Foursquare, Craigslist, Flickr all use OpenStreetMap data.
Data is stored at openstreetmap.org/wiki/servers
ODbL license for data = fine to copy, distribute, transmit and adapt, but requires attribution when used.
(c) OpenStreetMap contributors
Data comes out at openstreetmap.org/wiki/planet.osm in PBF binary format (XML also).
The XML = 400 Gigabytes = whole world of data, weighty data. Extracts are more useful than the whole huge pile.
Web tools: openstreetmap.org uses ID editor and JOSM (another editor).
These web tools edit the map data. There are also mobile editors for iOS (pushpin) and Android (Vespucci).
OSM = OpenStreetMap
OSM data consists of nodes, ways and relations.
Nodes = points in space.
Ways = collection of two or more points together (e.g. can collect into a polygon to represent a building).
Relations = group ways into higher level (e.g. a National Park that is multiple physical areas).
Notes = Communication to other contributors about issues at location note is left at.
OSM data is meant for here and now, no historical dating per se, just date when data “checked-in”.
OpenFantasyMap uses same tech to make a virtual world.
Using OSM data: Get it, Use it, Attribute it.
Leaflet = open source JavaScript plugin for displaying OSM data.
Mapbox.js = JavaScript plug-in based on Leaflet.
overpass-turbo.eu = live query of OSM data, gets data returned as GeoJSON).
Local meetup Maptime PDX event hosted at Esri has all levels of experience.
9. The Keys to Working Remotely
Communication tools: basecamp, skype, evernote, google docs, group chat
Designers: Dropbox, Invision app
Developers: Github, JSFiddle, CodePen
Pros: Flexible hours, removal of distractions = productivity
Overcommunicate:
10. Make your wireless router route (or anything else) the way you want it to, with OpenWrt
OpenWrt = Build system and Linux distro
Look at OpenWrt to see list of supported devices.
Atheros radio or Raylink radio best, avoid Broadcom devices because Broadcom device drivers limited.
Can be used for data loggers, hack your router, put it in the field in a bucket and manage something remotely over WiFi (pull out data, etc.).
OpenWrt differs from ddwrt purpose. OpenWrt is for when you want to shoehorn in your own code to do something custom.
OpenWrt is a set of makefiles based on buildroot system for embedded stuff = a set of core packages and feeds (package makefiles).
OpenWrt uses makefiles (not python or bake like OpenEmbedded Linux distros).
git clone -l /home/build/openwrt-prebaked openwrt
Atheros radio will be the default if you don’t have a .config
Generic = NOR flash memory.
Netgear WNDR3800 has 128 meg RAM, end-of-lifed in 2013. Good choice to hack.
UCI = way of storing configuration information.
Try to back up the device image since there is data unique to each device radio (in SOC flash memory) for tuning parameters for the specific chip in the specific device. You can overwrite these (inadvertantly) when you flash an image.
/etc/uci-defaults = scripts meant to run once, then delete themselves, usually after a package install.
Use a serial console cable (can use it for bootloader console and can solve most problems with this).
At Frye’s look at router model number and serial number. Check OpenWrt wiki to see if supported.
History.
X10
Object-oriented meets functional.
Runs on JVM.
Not as pure as a pure functional language.
First released in 2004.
Java interoperability
13. The 20,000 km View: How GPS works
GPS is purely passive, it can’t track you. It gives you latitude, longitude and time.
Trilateration
14. Modernizing a Stagnant Toolbox
http://make.wordpress.org
WordPress started in 2003 using tools:
15. Airplanes:Sailboats::Mobile:Desktop
We didn’t understand sailboats and sailing until we invented airplanes and could understand the airflow around a wing.
So now we can understand the desktop because we have mobile devices.
We are now looking at the desktop through the lens of mobile.
Responsive design is of paramount importance for dealing with different screen sizes.
16. Grokking Git
Three keys to grokking git
How do you solve the problem of turning off a device that has no on/off button? This is something that PDXmobile wrestled with and pinned down. Check out their blog post here.
No matter what human pyramid you’re sitting on, there is always heat below. Former Mozilla CEO Brendan Eich certainly found that out — and fast. Read what our friend at PDXmobile had to say about it.
It’s not even Halloween, let alone Thanksgiving or Christmas, but all holidays seem to arrive in stores earlier and earlier, so why not year end predictions? Why not start predicting what will happen next year as soon as the Christmas decorations arrive in stores?
PDXmobile did just that and here are their predictions for the mobile technology industry in 2014. It’s a year you won’t want to miss.