In the fourth and final post in my series on writing a technical book, I review marketing my book and everything else that happens post-publication once the book goes out into the wild.
In the third post in my series on writing a technical book, I reflect on all of the work after the book was written to actually getting the book on real and virtual shelves and out to the public at large.
On Nov. 18, 2014, I presented a talk at the Seattle ReactJS Meetup on creating Backbone.js applications with React components, enabling more efficient DOM rendering, server-side rendering, and other nifty possibilities.
In the second post in my series on writing a technical book, I walk through my experiences writing the six chapters that would eventually comprise Backbone.js Testing. I discuss the ups and downs of working with a time-sensitive publisher, finding the time and motivation to write, and honing the material down into an actual book.
Packt has a 50% off discount for the holidays through Oct. 17th.
Win a free copy of Backbone.js Testing! Packt Publishing's marketing team is interested in getting your feedback on my recently published book with a contest giveaway.
The "spinx-bootstrap-theme" integrates Twitter Bootstrap with Python Sphinx. Version 0.3.0 adds support for Bootstrap 3 and many new other additions.
In a series of posts, I walk through my adventure in writing my first technical book, Backbone.js Testing. My first post discusses the process of connecting with a publisher, planning the book, signing the contract and starting work.
Backbone.js Testing is a forthcoming book that covers all aspects of test development for Backbone.js application with practical examples using the Mocha, Chai and Sinon.JS libraries. The book's current publication date is set for late June 2013.
Curiosity Media runs the world’s largest Spanish learning website, SpanishDict.com, backed by many Node.js applications. In a presentation to the May 8, 2013 Seattle Node.js meetup, I discuss the the good, the bad, and the ugly technical details of running Node.js services for over a year in production.
The "spinx-bootstrap-theme" integrates Twitter Bootstrap with Python Sphinx. New version 0.2.0 adds support for Bootswatch themes and customizations to the vanilla Bootstrap appearance.
The "spinx-bootstrap-theme" plugin integrates Twitter Bootstrap with the Sphinx documentation tool. Version 0.1.6 is the latest upgrade with a new Bootstrap version, various fixes and many UI improvements.
The "spinx-bootstrap-theme" plugin integrates Twitter Bootstrap with the Sphinx documentation tool. Version 0.1.0 adds new features including responsive (mobile-friendly) design, better dropdown navigation menu support, deployment from the PyPI repository and an upgrade to Twitter Bootstrap v2.2.1.
Bootstrap is a front-end web framework for fast, intuitive and consistent web design. Loose Bits recently transitioned over to Bootstrap from an ad-hoc collection of frameworks and utilities, and now has a unified, responsive experience on web, tablet and mobile platforms.
Node.js streams offer efficient and programmer-friendly means of binding together data inputs and outputs. Writing your own readable and/or writable streams can provide an enormous amount of flexibility and power over normal callback-style data wrangling, and all without too much extra programming effort.
On March 20, 2012, we launched the NovaNode meetup with two talks. I gave a short talk on deploying Node.js applications to the cloud. I have now placed my presentation and demo source code online.
The ACM Transactions of Information and System Security (TISSEC) recently published a paper I co-authored with some UCSD folks in grad school discussing the creation and evolution of return-oriented programming, a computer exploit designed to defeat certain classes of systems security.
We're kicking off the new NovaNode - Northern Virginia Node.js - meetup on March 20 with two talks. My talk will focus on rapid application development and deployment to the cloud. Come learn how to create and scale your asynchronous web applications!
Async.js is a control flow library for Node.js and the browser. I gave the following presentation to the Feb. 20, 2012 joint meetup for Node.DC and DC jQuery.
Google App Engine provides an easy framework for hosting a static site and providing extensible user authentication based on Google Apps or OpenID accounts. This makes App Engine a great (and inexpensive) resource for quickly hosting static HTML content limited to an appropriate user domain.
The "spinx-bootstrap-theme" plugin brings the awesomeness of the Twitter Bootstrap CSS/JS framework to the Sphinx documentation tool as an easy-to-install plugin.
My presentation on the Sunny.js cloud library for the DC Node.js October meetup. Also includes a simple web proxy server (backed by a cloud datastore) for gluing together cloud and HTTP web requests.
Sunny.js is a cloud datastore client for Node.js that provides an event-based interface to various cloud stores (AWS S3, Google Storage) for fast, cloud-agnostic programming. It includes Node.js niceties such as a Read/WriteStream implementation, and offers cloud features like arbitrary metadata / request headers and SSL support.
Pivot faceting, a feature introduced in Solr 4.0, can be approximated in Solr 1.4 using a few non-standard facet field/query features (and a little bit of hackery).
Loose Bits' journey from Blogger to GitHub using Jekyll.
ConstantDict is a Python enumeration pattern using class variables with straightforward construction, and a terse syntax.
Extend the Django settings module with derived / inferred attributes at runtime.
Introducing Django Cloud Browser, a portable Django application for viewing and navigating a cloud (AWS, Rackspace, etc.) datastore, with admin / normal user interfaces, and pseudo-directory inference.
Discuss Rackspace Cloud Files implied or "pseudo-" directories for storage objects and different API programming options.
Use Python standard library logging handlers with the Celery distributed task queue.
Examine tips, tricks and best practices with Rackspace's "servicenet" Cloud Files API option for free bandwidth to Cloud Servers in the same datacenter.
Create distributed task locks for the Celery message queue using Redis and Python decorators.