My Creative Name

For as long as I can remember, I have gone by “Daniel”.  I’ve also wondered what a  good name would be for expressing what I like to do, creatively and technically.  I’ve been wanting a sort of umbrella name that would not confine me (“creates” works well for posts, videos, screencasts, code, music, etc).

Thanks to Twitter’s name length limit, I suppose I can also answer to “Dan”.

My first inclination was to get “DanielSmithCreates”, or “DanielSmithCreative”,  but it dawned on me that fewer syllables would be better.  I grabbed “DanSmithCreates” on Twitter, and elsewhere (domains and accounts).

So this is just a little update (I’ve been eager to say something), and I have a couple of projects in the works.  More soon!

Posted in Creative | Tagged , | Comments Off on My Creative Name

Full Stack Anxiety

Since I am searching for a job, I deal with “Full Stack Anxiety” every day. Every job listing seems to want a different set of skills. It can be maddening. I don’t want to shift gears all the time, trying to know “everything”

Learning what I would “like to know” would keep me busy for the next 20 years…

So, there is plenty that I know now, and I’ve been steadily adding to that over the last year. I made the concious choice to know much more than just JS/jQuery + LAMP.

I’ll try to mix this up a bit – my picks, and my “mmm, no”, or “not yet…”. There is a lot that I have left out. It’s exhausting to try to think about every little nugget that could be learned. That’s the point of this post – editing to some of that first tier that’s been nagging at me.


ES6 – oh yeah. I love ES6. It helps me on the Node.js side, and it helps me on the front end.

PHP 7 – yeah, I will learn the new stuff. I’ve been doing PHP off and on for 15 years. I think there’s merit in keeping sharp on it (and I want to know Laravel)

Python vs Ruby – for a long time, I would get anxious thinking “I have to know one of these, but which to pick!?”. I picked Python, because it has so much going for it besides the web, and I like the syntax. It’s a building block for me to learn Django. My “other. all purpose scripting language” used to be Perl, but I have a feeling that will migrate to being Python. Python is also used in Maya, which is a 3D package I’d love to learn some day.

C/C++ – Not now, but My roots. Well, BASIC and Pascal if I want to go really far back. I have not touched C/C++ since I worked on AutoCAD. That’s before I started on the Web. No plans to do anything in C/C++, except perhaps update my old Grabchars package.

Java – Oh, nah, why? Bloat. I get Java “the language” just fine. I worked with Java 20 years ago (an internal AOL project). It just seems like it’s evolved to an overly complex beast.

C# – Well, I don’t do any Windows-specific development at the moment.

Go Rust Clojure Scala R Groovy – Yes, I know they exist. Not going to detour into them at this time.

Front End…

Vue.js – yep. I love it. Vue is a breath of fresh air.

React – yes. Redux – yes. MobX – an even bigger yes. Learning React gave me a foundation that makes me appreciate Vue.js that much more. I will stay sharp on React, because it’s in wide use, and I like what can be done with it. I do prefer Vue.js, but I can do either.

Angular – no. I realize it cuts me out of some jobs. What stops me is that I hear it has a pretty high learning curve. I feel like I want to spend those cycles on Vue and React.. be that much better at those. Of course, if I get a chance to come up to speed on Angular with a paying project, then cool.

Ember, Polymer, Meteor – They may be great. I gotta focus. I’m open to learning them, if need be.

CSS3 + Sass – yes! With Less? Stylus? etc. Maybe. If a project calls for it. Am interested in SASS for the momment. Some knowledge of Flexbox and Grids… will learn more.

PWA – Yes. I am studying Progressive Web Apps.

Back End…

ngnix, Apache – If I need to dive into them again… I like being able to just spin up MAMP on my Mac, or some Digital Ocean droplet (or equivalent) on the server side

Node.js, Express, Mongoose – Yes! I will keep learning more here

Laravel – One reason I am sticking with PHP is so that I can learn Laravel to go with it. It’s powerful.


MySQL – I’ll keep sharp on it. I think it’s the most likely thing that’s going to come up on the LAMP side.

Postgres, Oracle – Nope, no plans there. If a project calls for it, I’ll dive in. I save those cycles now to learn more about MongoDB

MongoDB – Yep! I really like it.


WordPress – I have a handle on how themes work, and could learn plugins and much more.

Joomla, Drupal – Nope. I’ll put that energy into learning WordPress internals…


I feel like tools are finally settling down a bit.

npm, webpack – yes

grunt, gulp – for new projects? I will go with webpack whenever I can

See what I mean about all this?  I do feel spread thin, and I say no to a lot of things.  This is just the tip of the iceberg – I didn’t mention that I am interested in 3D, XR, etc.

Posted in Creative, programming, tech | Tagged | Comments Off on Full Stack Anxiety

My Crowdsourced Search Idea: ThereThenTag

Mapping Web Addresses to Location, Time, and Tags
August 2016, Draft 1
Copyright 2003–2016 by Daniel Smith. All Rights Reserved, @javajoint


[I am resurrecting an idea from 2003. It’s a structure for crowdsourced search. There is even a business model to it — bonus!]

Imagine searching by time, location, and tags, where the results have been crowd-sourced. Imagine that creating and viewing searches was easy, via the web, mobile, or in 3D/VR.

A ThereThenTag address provides a simple search link that can be passed around, and the results are curated and structured.

This document suggests a way to add new dimensions to web searching. It is relatively straightforward to map tags, time and space (from the physical world), to everyday web addresses (URLs). The benefit is to be able to get search results based on tags, time, and/or a location, and on a per-domain basis. As two quick examples, it should be possible to do a search which expresses “all of the submitted links from within 500 feet of 51st and Lexington, NYC, within the last 5 days”, or “San Francisco bridge photos”.

A ThereThenTag address expresses Location, Time, and/or Tags, and does not change existing web documents.

The heart of the idea is this: For one or more documents, create an additional URL which specifies a location in longitude/latitude/altitude, a time, and a set of tags. The URL is an alias of sorts, that can be resolved back to an one or more original web resources. There may be many such servers (as there are for Wikis, for example)

The idea is to make these very simple to use, pass around, and create/update (web. mobile, 3D, VR)


As an additional way of getting to:

The scheme provides a building block which can be exploited by a wide range of tools (current search engines, mapping sites, find pages that are specific to a time in the past OR future). In order to stay true to its goals, it sticks to a strict representation of location, time, and tags, in a specific order.

All ThereThenTag addresses follow a consistent form. An easy mnemonic to remember this is “DOLTT”, which stands for DOmain, Location, Time, and Tags:


A shorthand I use to refer to ThereThenTag addresses is “TTT”.

All TTT addresses contain Location and Time components. There are defaults for these components, if the location and/or time information is not available or applicable. The defaults are explained further on in this document.

The location component (i.e. “37.75,-122.45,50.4”) consists of:

latitude — decimal number, such as 37.0 or -30.83887
longitude — same as latitude, a decimal such as -122.1
altitude — decimal number of meters, such as 50.587

All numbers for latitude, longitude, and altitude can use an arbitrary amount of precision. The ‘,’ character is used to separate the fields, and no whitespace is allowed.

The time component (i.e. “1994–11–05T13:15:30Z”) conforms to ISO 8601, as described in

The tag component consists of one or more comma separated words. Valid characters are [0–9a-zA-Z_:]

For any component, there needs to be a way of describing “none”, or “any”:
* ‘^’ means “none”
* ‘*’ means “any”

“None” means “nothing was ever specified, such as a time, location, or tag”

“Any” means “we dont care if something was specified, or what it may be if it was”

“None” is more restrictive.


*,-122.49333,30/*/bridge means to use the given Location, for any time, with the tag of “bridge”
*^/2015-11-05/bridge means to ignore location, use a specific date, with the tag of “bridge”

A ThereThenTag address resolves to a search results page. That page might have:

  • the results, along with maps, time/calendar, tag clouds — presented in a minimal interface where the user could drill down
  • very targeted advertising is possible (after all, this could be for a very specific time, location, and set of tags)

Note that many possible TTT servers are a part of this. It is not meant to be centralized, although the servers may certainly refer to each other.


ThereThenTag addresses are a universally consistent way of referencing a web resource, by domain, space, time, and tags.

Standardization is very important. Tools to exploit the idea cannot succeed if there are incompatible variations. The key thing is to put space, time, and tag information into a URL, and keep it simple. — It should be an open standard, so that anyone can build tools to exploit it.

As far as I can tell, nobody has done this in a way that balances some structure, crowdsourcing, having it distributed, and having an open standard.

I do have in mind a consistent means of providing extensions. “people” is an obvious one, such as /people=@john,@paul,@george,@ringo

Presentation of search results can take a variety of forms, such as:

  • sorted by proximity to the user, sorting by time
  • adding Place Names (such as Berkeley, CA) to a search result.
  • overlaying results on a map, as clickable dots/icons.. the map may have a “time filter” control, so that a user could step through a week/month/year of data, and not have to see everything at once.

Thanks for reading this through, and let me know of any feedback.

Posted in Creative, Futurism, net, Social, web | Tagged , , , | Comments Off on My Crowdsourced Search Idea: ThereThenTag

Recent Video Courses

Learn Learn Learn…

Since my contract wound up (client ran out of money), I decided to go on a learning binge.  I’m looking for work, so of course it will help!

As always, I feel like the front end dev world is a Zoo, or the Wild West, or perhaps a Zoo in the Wild West…  There’s some signs that it’s settling down a tad.   Perhaps not though – perhaps I got less confused about what to pick 🙂

Some advice as a sidebar: if you are still a new developer, here are three things that may guide your choices:  1) you can’t learn everything, so try not to get spread too thin, 2) pick tech that has some mind share, some community to it — if you have questions, you want to know that you have some place to turn for help, and 3) pick tech that is actually being used and currently being developed — for instance, check for the last Github commit…

A bit of what I know now (diagram over on Or if I am making a quick list of the New Stuff here: NodeJS, ExpressJS, Mongoose, MongoDB, npm, webpack, ES6, React, Redux, and Babel.  Doesn’t mean I have it super wired, but those topics have been my focus.

I doubled, even tripled up on some of the content.  It’s helpful to get the take of different teachers.  The three that I learned the most from are: Wes Bos, Stephen Grider, and Wes Higbee.  A great aspect to all of these videos is that they are split up very well.  I think almost every nugget is under 10 minutes.

A hat tip to some others that I follow on YouTube:, LevelUpTuts, and of course funfunfunction (mpj)

Learning Path: Node for Frontend Developers – Wes Higbee

This is a long, sweeping course you can get on Safari Books Online.  Wes starts with Node, and the idea of managing Chat Rooms.  He gradually introduces NPM, Express, live server reloading, package.json particulars, middleware, MongoDB, Passport, Mongoose, etc.  It’s a lot.   Wes (as in Higbee, not Wes Bos) is partial to the WebStorm editor, and he illustrates the built-in debugging features of it.  That part is cool, but I’m pretty hardcore on Sublime – wondering what’s good to use as a debugger in that case.

[if you are wondering who to choose between and Safari Books Online, I give the nod to Safari]


Modern React with Redux – Stephen Grider

This is a great intro to React, Redux and you’ll learn about some ES6 as well.  Stephen likes to refer to diagrams (via Balsamiq) to illustrate some concepts before/while diving into code, and that really helps.  He also shows how to integrate 3rd party APIs, such as Google Maps and YouTube.  Also good to check out Stephen’s Rally Coding site for more videos.


Advanced React and Redux – Stephen Grider

This is the followup to Stephen’s “Modern React” course, and I am most of the way through it.  He does a good job of introducing Mocha (testing framework) and Chai (assertion lib for testing).  He gets into client and server side authentication, storage into MongoDB, middleware, higher order components (composition), and much else.


React For Beginners – Wes Bos

Wes Bos is a faster paced speaker than many (and some of it is the editing… more pauses would be good), but the examples and the way things are laid out are great.  He leads through the creation of an inventory app for ordering fish – it focuses on React, JSX, passing props around, ES6 modules, and the use of Firebase to persist storage.  This was my first intro to React, and I like that it was so well focused.


Learn Redux – Wes Bos

This is the followup to React For Beginners, and really gets into the use of Redux (the ideas of global state, creating actions and reducers,  etc).  The app, “Reduxstagram” is a simple clone of Instagram, and is non-trivial.   You should definitely have a handle on React by itself before taking on this one.


ES6 for Everyone – Wes Bos

This course really focuses on JavaScript, the language, and does not veer much into React or Node territory.  It’s a great dive into all of the new ES6 functionality, and you should also expect to learn a bit about Babel, modules, ESLint, and WebPack.

If I had to suggest an order for learning all of this, it would be:

  • ES6 first.  Good to get this under your belt, because elements of it crop up in all of the other videos
  • Wes Higbee’s Node.js course on Safari.  This is a solid server side (there is some html produced via Jade, but that’s not the focus) course that will get you going on Node, using some of that ES6 you just learned, thinking about authentication, routing, understanding promises, communication with MongoDB (Native, or via Mongoose), and Express.  There is so much here that comes up, or gets alluded to, in the other courses
  • The beginning React course from either Grider or Bos.  They have different styles, and I am not going to express a preference.  Bos is faster paced, but Grider sketches out a bit more theory.
  • The advanced React + Redux course from either Grider or Bos.  Different styles.  I like both.  Grider’s course is 12 hours, much longer, and covers more about authentication (client and server sides).  Bos has more of quick 2.5 hour self-contained Instagram clone that is fast paced.


Posted in programming, tech | Tagged , , , , , , , , | Comments Off on Recent Video Courses

Hello Again!

Holiday in Kekeland

Posted in Uncategorized | Comments Off on Hello Again!

Digital Sanity, Part 1: On Leaving Facebook…

TL;DR – There are too many tradeoffs for me to keep using Facebook as a personal account, so I am going to close it.  I’d rather focus on using Twitter and other services.

A little history: I’ve been on the Internet and its predecessors for over 30 years, and have had the pleasure of working on the AOL.Com and Friendster teams.  I received my first email in 1981, and I recall using my Atari 400 to dial up to a BBS before that.  I have a wee bit of insight as to how things were, and how they got to be now…

I’ve been frowning more and more lately, when I think of online privacy and security.  We all have a comfort zone of which tradeoffs we’re willing to make to be online.  There are great things there:  Friends!  Retail!  Media!  If we’re willing to give up much of our privacy and security, and be tracked relentlessly by third parties of third parties, then sure, the Internet is a digital wonderland.

But at some point, it’s good to look up, say “time out!”, take a deep breath, and think about “how did I get here?  Why am I letting Facebook and others track so much of my life?  Do I really trust these people to do the right thing with my data?”

I’ve been thinking of leaving Facebook for a long time.  The thing that would make me stay is “well, I have friends there….”  However, I have many of those same friends over on Twitter.   There hasn’t been any one tipping point, but I would say the NYTimes Article: Let Me Pay For Facebook helped cement my decision.

I will close my main personal Facebook account soon.  I simply dont trust Facebook to do the right thing.  They continually mess with their privacy settings, and they don’t respect my choices (i.e. the newsfeed reading order).  I don’t want data about me being sold to third parties, which will in turn make its way to third parties of third parties.  That turns into ad targeting, text messages, spam emails, etc.  Does Facebook do much to give me a warm and fuzzy feeling about my data?  Nope.

Tim Cook recently gave a speech about Privacy and Security, and made reference to companies such as Facebook and Google:

“They’re gobbling up everything they can learn about you and trying to monetize it. We think that’s wrong. And it’s not the kind of company that Apple wants to be”  — Tim Cook

Not that I trust iCloud much either, but that’s another topic.  Of the social media services I use, I perceive Facebook as the least trustworthy, so ixnay to the facenay!

I will write more about this whole idea of “Digital Sanity” in the coming weeks.  It’s not as if I’ve traipsed off to conspiracy theory land.  It’s more of a feeling of “what have I given up in the last 20 years, do I feel comfy with that, and what do I get in return?”


Posted in blog, net, Privacy, Social | Comments Off on Digital Sanity, Part 1: On Leaving Facebook…


Happy New Year!  Ohhhh… a resolution post.



Real Quick Recap

I suppose I could feel embarrassed about not doing more of my 2014 resolutions.  I did a few things well: took the ferry once a week, kept creating virtual photography, learned a lot of programming stuff, kept refining what I want to do in WebGL (and how my idea for ThereThen addresses fits into it) and kept up with my guitar.  There were some big things (move to a bigger space I can use as a studio, and travel) I didn’t do.  Moment of shame.

Continue reading

Posted in blog, Creative, Technical | Comments Off on 2015

I’m Back / Year End

Almost bye to 2014!

Some quick stuff…

I look back at my resolutions, and I did some of them.  I kinda feel sheepish that I didn’t do others (I didn’t move, and I didn’t keep up with my blog or other creative posts, and I didn’t do the social stuff I wanted)

It was a decent year, work-wise. was great, up till about October.  The company was sold, and the contractors were forever told “wait for the dust to settle”.  It turned out to be a lot of dust, and I am doing something different now.

The whole idea of being tracked all over the web (Facebook, Google) has really been turning me off.  I have not decided what I will do about Facebook, but I have switched my search engine to

I do finally have an idea of what I want to work towards, and it’s a bit of of Creative Technologist.  I want to orient my programming / dev stuff more towards WebGL, and I also want to become very conversant with more of the digital creative folks (PhotoShop, Maya/Blender, Premiere, Ableton).  It doesn’t mean I can be an expert at them, but it I do want to be able to explore creatively, and be able to have the high level sense of how it all fits together.

More to say soon – shaking off my writing rust.

Posted in blog, Creative | Comments Off on I’m Back / Year End

Goal: A Cross Country Drive


In my 2014 Resolutions Post, I said:

And, of course, I have my social/creative trip idea: I would love to drive cross country, and meet up with a different friend for dinner each night. It would take me to all sorts of spots off the beaten path, and would be a cool touchstone each day — to meet folks I’ve only known online, and to visit with some people I haven’t seen in a while. I’d love it!

… and I am serious about that. I really want to drive cross country, meet friends, take a lot of pictures, and experience some sides of America that would be missed by merely sticking to the Interstate for 3500 miles…

Why And What?

Travel brings perspective. Getting in a car and driving it is more connected than flying. Getting off the main roads and seeing one of a kind places is even better. My hunch is that touching base with a lot of people along the way is better still. I sure know many online, and I imagine it would take me into the Real America; not just the sanitized freeway version of it.

I’ve seen enough Big Box stores and McDonalds to last a lifetime. This trip ain’t about that.

I want to take a lot of pictures, write a bit, and perhaps solve some common tech problems for people along the way (“my computer is acting funny…”). And I want to build on some friendships, meet new people, and get all kinds of crazy perspectives.

A unifying theme would be: how does the Online Life of people I know compare to the one in the world of the Real? We all have our online personas and expression.. Facebook, Reddit, Second LIfe, etc. Heck, I am on Ferry to San Francisco as I write this, and there’s 200 people delving into their online selves. I am no Social Anthropologist, but obviously this is quite different than 10 or 20 years ago. How is it different, outside the Tech Bubble of the SF Bay Area?

One could say that with so much Mobile in the last 5 years, that the lines of Virtual and Real are increasingly blurred. Yeah, of course there is some escape into a phone or tablet, but there is plenty that is unique to where you live (I hope so!). That’s what I find interesting, and that’s what I want to see and capture in photos.

Will anyone care as to what I snap and write? I don’t know, and actually that does not influence my desire to do it. Well, if you want to fund this I suppose I care a bit… I have a good history of doing Virtual Photography, and average over 500 views a day with that. I do that for myself, but other people seem to like it. I think that passion starts with wanting to do something because it makes one happy. If it’s done well, then other people take notice. I don’t think it works the other way around (“oh!? others like this? Gee, I think I will develop a passion for it!”)

So I am serious about wanting to do this trip. I had a glimpse of the possibilities when driving cross country in 2005. I’ll do it as part of my own journey, and any audience for it is a cool bonus.

  • money – hey, how am I going to pay for this? I don’t know yet. Yes I am aware of obligations, and no, I cant expect the trip to pay for itself. Can I do it semi-cheaply? Sure… gas and where to stay (motels, not so much B&B’s) will be the biggest costs. Can I work along the way? Yep, but I would not do that to the point where I am merely driving and sleeping. What would be the point?
  • car – omg I don’t have a car! I’ll figure it out.
  • the cat – what to do with Dylan… I dont think I want to schlep him around in a car for 2-3 weeks straight. I’ll figure it out.
  • film – ha ha – just seeing if you are paying attention. I suppose I could pretend I would be racking up $20 a day of 1990’s film and processing charges. A few days of that pays for a lot of memory.. problem solved.
  • route – this is an interesting one.. I have a basic idea of who I will visit (and they know.. there will be no surprises like that ) I expect the route will be somewhere between the most direct and efficient, and crazy zig-zag. I would love to keep this under 3 weeks. My naive idea is to make a large circuit, coast to coast, up and around and back…
  • when – well, I cant do this until I get the other problems sorted, and I do need a bit of coordinating time with friends. It wont be till late Spring, at the earliest.


I know some folks who have done the cross country drive solo.. my own father did it a few times before I was born. Let me know of any tips!

Posted in blog, Social | Comments Off on Goal: A Cross Country Drive

Ahoy, It’s 2014

One of my resolutions has been.. to post my resolutions…

2013 was a tough year, and I am glad for the fresh start (and new job). I could dwell on why last year sucked so much (being out of work, hurt badly by someone, having to move when the place I was living in went up for sale…), but, new years are for new beginnings.

And of course, January 1 is an arbitrary day. We can start afresh at any time.

I used to have the attitude of “I’ll make resolutions as I think of them”. It’s a good goal, but something about the Occasion of a New Year gives things more.. hmm.. weight?

And of course, posting some resolutions gives me more incentive to follow through. Any of you could hit me up and say “Are you bench pressing 700 pounds yet”, and I’ll say “whoa there cowboy! You have me confused with someone else”. But yeah, you can ask me about anything I post here. Keep me focused.


I’ve been soooo bad at keeping up with friendships.  I am better at it online, and can say I’m close to people all over the world. But… it’s not balanced, and I need to reconnect with some old friends locally. Waves at them.. hey you!

  • host a dinner once a month
  • get out at least once every two weeks to go do something with friends

Hosting implies I am going to move to some place where I can do that, and that’s another goal I will get to…


Blog – I will post once a week.

Music – You know, I’ve been playing guitar for 30 years, and I sound like I have been playing for one! Ok, not really, perhaps two… I’ll start recording and posting to Soundcloud, or if I am feeling photogenic, perhaps Youtube. I miss my Strat (which I gave to my daughter, what was I thinking?), and my old Fender acoustic cutaway with a pickup. Sheesh, and I miss my old mixer and digital piano..  The first goal is just to get something recorded once a month.

Photography – Most of the photography I do is Virtual. It’s a creative joy to do with friends in SL, and I’m pretty good at it. But… I also get out and about, especially in San Francisco, and will start posting some.  I am wayyyy overdue for a new phone (yes, I have an iPhone 3GS in great shape.. that would be over 4 years old) with a much better camera.

Quality Of Life

It’s pretty easy to get swept up in the routine of being online, or traveling to another place where I can be.. yes.. you guessed it.. back online. Not good. Some of the quality of life thing, to me, means having more variety, and being able to slow down.

  • Take the Ferry to work at least once a week. Indeed, I am writing this on that!
  • Read a book per month
  • Watch a movie per week
  • Go out to a movie per month
  • Lots of walks, both City and Nature


It feels like forever since I’ve been able to have so much as a weekend trip where I can simply relax. I will do that every other month, starting in February.

I actually have enough frequent flyer miles for a round trip in the US. Hmmm…

And, of course, I have my social/creative trip idea: I would love to drive cross country, and meet up with a different friend for dinner each night.  It would take me to all sorts of spots off the beaten path, and would be a cool touchstone each day — to meet folks I’ve only known online, and to visit with some people I haven’t seen in a while.  I’d love it!


The definite thing this year is that I want to get a 1 or 2 bedroom place, and get most of my stuff out of storage. I have a great small guest cottage situation right now, but I can’t do it forever – I do need more space, want to have a spot to have people over, and miss some things that have been tucked away in storage for a year. I am aiming for moving to a new place on June 1st.

Posted in blog | Tagged | Comments Off on Ahoy, It’s 2014