Subscribe: I Hereby Decree
Added By: Feedage Forager Feedage Grade B rated
Language: English
art  cheer team  code  content  data  don  information  long  make  new  random  request  star wars  term  things  time  work 
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: I Hereby Decree

I Hereby Decree

A blog of short thoughts


Attention Coworkers

Mon, 17 Oct 2016 17:13:53 -0400

It is I who will liberate you from the Milky Ways.

For years our office has purchased large wholesale bags of M&M/Mars assorted fun-sized candy bars and in the same time we have continued to treat ourselves to the M&M's, Snickers, Three Musketeers, 100 Grand Bars, Reese's Peanut Butter Cups, and York Peppermint Patties. I have watched as year after year we have carefully navigated the swelling sea of unwanted Milky Way bars as it flowed and flowed and never ebbed.

No more.

I will throw myself on the grenade. I will remove or consume the Milky Ways until they no longer plague our candy bowls. Please, do not throw yourselves upon me. I know that you will regard me evermore as your redeemer but it is what any good office citizen would do. I cannot stand to see you suffer any longer.

Enjoying Apple Watch

Wed, 18 May 2016 12:53:08 -0400

I have a lot more I could say about this, but I have been enjoying Apple Watch. For all the pros and cons here is the shortest summary I could come up with:


  • Siri isn't reliable.

  • Asking Siri to do something that could work and it will often redirect you to the phone. Like tweeting or showing heads up info like dictionary definitions and such.

  • App icons mysteriously disappear.

  • There are many occasions when it feels unnecessary to have.

  • Kind of expensive.


  • When Siri does work, it is amazing.

  • It shines during fitness activities and my commute.

  • Apple Pay is great.

  • Controlling Music or my TV is terrific.

On any given day if I do not ride my bike and I'm not commuting to work on a crowded train then I could live without it. If I am riding my bike or if I am on a crowded train then it is nearly indispensable.

Here is one small example: Late last year we were looking for our first home. My wife and I would look online at listings and then go check things out and drive by and get a feel for the neighborhood and whatnot. One evening I was riding my bike home from the train station when I got a text from my wife with a new listing. It was between where I was and home anyway so I decided to stop by. I had my wife text me the address and then I used the maps app to guide me. All of this while I am still safely riding my bike on the bike trail. No need to take out my phone. When I finally got to the address, my wife called me (she had been tracking my progress with Find my Friends) and I answered the call on the watch and talked to her as I continued home. When I got home, by the way, I ended my workout that the watch had been tracking the whole time.

It was like the perfect scenario for having Apple Watch.

I am looking forward to whatever improvements and updates they make.

The bands are cool tool.

Some Interesting Findings About navigator.sendBeacon

Mon, 04 Jan 2016 17:59:37 -0500

In the web advertising world everyone wants to know when and where an ad is being served. There are a number of ways to track this, but a common practice by many third-party ad tracking services is to give the ad creator or publisher a url to a transparent 1x1 gif that serves as a homing beacon of sorts. It loads in the background, you cannot see it, and it sends data to the server in the form of an HTTP request.

Sometimes these requests can fail. One common reason they fail is because that before the image/URL can load or the request be fully made the user will navigate away from the page they are on. This cancels the request and so it is never completed. There has been a proposal for browsers to alleviate this problem by providing an interface in JavaScript:


This method takes a URL to request and then data to be added to the request body (always a POST request). The idea is that this request is not canceled by user navigation and is more-or-less guaranteed to be made. This sounds delightful, from an ad or metrics perspective, but there are some caveats.

First, the data is sent as a POST, but not as form data. Instead it is included as part of the request body. This isn't a difficulty, but it means your server side code has to know how to parse this data and use it. There can be complication with this depending on what technology you are using. For example, certain Java servlet filters might try and access the body, but it can only be accessed once since it is an input stream.

Second, in case you considered using this with third-party tracking pixels, not every third-party tracker allows POST requests. This negates any usefulness and the feature almost entirely.

Finally, some browsers have a data limit of how much data, per page view, can be sent by the sendBeacon API. In my testing I have noticed that this only includes actual POST body data, so you can still send quite a lot on the query string if you want.

navigator.sendBeacon is not yet supported in every browser, but I think it will be a useful browser feature when it is, as long as one understands the limitations - which are likely to change or be different in each browser.

Star Wars Food

Sat, 02 Jan 2016 16:02:27 -0500

I reviewed some Star Wars Food:

Short and Long Balance

Tue, 07 Jul 2015 02:12:09 -0400

I have been thinking a lot lately about how to balance short term gains against long term gains when it comes to software development. I suspect I am not the first but what I struggle with is that much of what can be accomplished in the short term is not suitable for long term growth. Focusing too much on the long term can mean you miss short term opportunities and the feedback loop takes too long. You don't want to spend too much time on something that isn't going to help you or anyone else.

I do think the balance lies somewhere in that 1) It is important to understand the problem that needs to be solved in contrast to providing implementations details to any apparent problem without understanding it. 2) Setting up a good foundation, while not bullet proof, will get you a long way toward extensibility and being able to make quick wins later on. 3) Taking a tick-tock approach to short and long term goals (stability vs features, for example) allows teams to achieve both, but at the possible risk of extra context switching and thrashing.

While I am generally a fan of something akin to "agile development" I think that the idea of an Minimum Viable Product (MVP) can sometimes be detrimental if it becomes synonymous with ignoring quality along with features. In my opinion we'd all be able to make the most rock solid set of one or two features needed for a product instead of three or four buggy features.

I am also a firm believer in living within constraints. It isn't always easy and can even be humbling (saying no to a client because your product is lacking something the want can be hard to do) it can also be a catalyst for change while helping to keep things coherent in the mean time. Short term gains should follow patterns and be built on a solid foundation. Long term gains should be the rebuilding or shoring up of that foundation.

Star Wars VII Leaked Script

Sun, 19 Apr 2015 09:48:33 -0400

I was recently contacted about my interest in paying for pictures of the new Star Wars movie script. I was doubtful that there was any truth in the claims, so I asked for a sample. When I received it I couldn't believe my eyes. Here it is.

Han never shot first.

Needless to say I am now trying to raise the rest of the money needed so that I can get this exclusive before BuzzFeed or anyone else does. Here's to hoping it works out.

California Rad-sins

Wed, 08 Apr 2015 16:18:59 -0400

Raisins? More like Rad-sins, amirite?

I think I should pitch this to the California Raisin Marketing Board.

Small Update

Tue, 02 Dec 2014 14:59:37 -0500

Here are some things I've found interesting lately.

A New Flow

Wed, 05 Nov 2014 19:01:51 -0500

There is a lot of new data generated every moment. Most of which isn't actually that interesting, at least not on its own. As the world, or at least parts of the world, continues to be more connected the constant flow of this new information drives innovation in terms of how to organize and consume or even ignore it. How we digest this content, create it, and the tools that help us do both are ever changing and there is a new pattern emerging that points to a different style of data management. Consumption Compartmentalization has benefits, but there aren't great jumping off points. In college I had used bookmarks to keep track of all the different sites I wanted to check on a regular basis. I would open the pages one by one (and soon after, tab by tab) in a browser and read through the latest articles. Some friends had blogs, those were in the list. Each item was an individual link going to a new compartment of information. At some point Firefox introduced Live Bookmarks - A bookmark folder that pointed at a RSS/Atom/XML feed and would just show the latest articles as though they were regular bookmarks. It was about this time that the flow changed. Instead of individual, unique jumping off points there was a place to go to see part of the stream and start from there. Then came Google Reader. Reader allowed users to follow any number of feeds and lists and served as a central jumping off point for discovering and following all sorts of data. Unfortunately Google sunset Reader. There are other services that do nearly identically the same thing, but they aren't quite the same. Because of this (and, I must pause for a moment to mention that Facebook, Twitter, and other popular apps have changed the landscape of how and where people put new information) we have returned to what feels like the bookmarks of before. While there are aggregation services still around, most people turn on their phone then find the app they want to open and start there. The home screen in the new bookmarks bar. Technology has a constant drumbeat that makes it march ever forward and now is no exception. There are already signs that things are changing. Flipboard, already several years old, is like a content aggregator but also creates a unique layout - making the new content even easier to digest. I am not sure, however, that this isn't just a stopgap. That maybe Flipboard is a bit too Reader-esque and not enough of the thing of the future. An interesting article titled The End of Apps As We Know Them points to that the way we use our apps is changing. We are moving away from the bookmark-style launch screens and more toward interactive notifications and in-the-moment, contextual information processing. Google Now is the current best example of this - showing you information at the time you need it. The newest part of that idea, though, is the shift away from content consumption ("Your flight has been delayed") to content creation and data entry. Creation Auto updating/formatting of content in the moment. Facebook, Twitter, and other platforms allow for content creation and sharing in many diverse and easy to use ways and these services will continue to be a part of the new flow. Added to them (or, perhaps, as part of them) will be new kinds of content and data entry. Wearables will allow collection of personal activity data. Phones and beacon/checkpoint technology will give better locational awareness. These ideas certainly aren't new, but the emerging patterns of design and interaction seem to suggest they will become more prominent than they are now. With all this data, though, who will take the time to organize it and make it presentable? The answer is that the computers will do it for us. We can already see how some content streams, like Facebook's, auto filter and layout the things we post on our behal[...]

OS X Yosemite

Mon, 27 Oct 2014 18:22:42 -0400

I've been using Yosemite at home and at work for the last bit and have to say I love it more than I probably ought to do. Something about it is in tune with how I think I feel things are supposed to work. Not much has changed, but it just feels more "right." From the design to the small functional differences it is better is almost every way.

The only thing that is a bother for the moment is the new fullscreen button that replaced the old (+) button. Now you know to know to hit "Option+" for it to act like it did before and I use that all the time.

The green one now defaults "Full Screen"

That's all.

Code Art

Mon, 20 Oct 2014 19:11:05 -0400

I am a fan of art generated by code. I even gave it a try a little bit. There is a lot that can be discussed about the topic as a whole, but I want to only take a moment and spotlight a project that I found recently through browsing my Github feed.

var t;

Jenn Schiffer (who's posts on Medium, by the way, have caused a sufficient amount of confusion at work to make me an instant fan) is dissecting different artists and art styles and how one might replicate them using code.

Example step in the process

This includes first figuring out the patterns and replicable parts of art and then trying to reproduce them procedurally with code. What is interesting to me about the process is that this method almost completely ignores the question "What is art?" and instead says "Here is some art, lets break down the parts. How can I make a similar art with similar parts?" Which itself is an indirect answer to the first question, if even unintentionally.

It sort of reminds me of The Artist is Present Game where you relive the experience of the performance of the same name, only digitally. It isn't the same as the original, but it becomes its own thing by being an approximate replica in a different medium.

I don't mean to draw conclusions from things that don't need them. I enjoy art and code and art made from code. Maybe someday someone will create an interpreter that runs code based on art.

Music - Daft Science

Wed, 15 Oct 2014 17:38:39 -0400

I am a fan of Coins but only recently did I discover this album of Beastie Boys/Daft Punk mashup tracks. I have listened to it a lot over the last few weeks and I have to say that each track is better than the last. The only exception, for me, is the _Disco Breakin track which, while still a fun listen, doesn't follow the crescendo of increasing quality and instead takes us back to around _Pass the Mic. That could just be me, though.

Bonus: There is also a new CVS Bangers

Messing Up Cheer

Wed, 08 Oct 2014 12:43:25 -0400

I went to Eastern Washington University for a year between 2000 and 2001. While there I had the opportunity to be in the Marching Band, Wind Ensemble and Pep Band as third trombone. We would be required (and also paid) to play at sporting events. Because of this we would often have need to coordinate with the cheer team because they wanted to be sure to have time to do their cheers and they also wanted to know when we would play different songs because they had worked out little dance routines that accompanied them.

The thing is, though, we didn't really get along with the cheer squad. I am not exactly sure why, but there was some enmity there that perhaps had persisted through time. I was a freshman and so I bought in to the culture of animosity, and that is a topic for another day. It is enough to say that we felt occasionally inspired to upset the cheer team.

We would play this song at the request of the cheer team:

Normally when a band from an opposing school would play this song we would shout over the top of the "Go Team Go" part and instead shout "High School Band" in a mocking tone. We felt we were above this simple melodic rally cry. When the cheer team would insist we perform the tune we were always reluctant to comply. We would use this an opportunity to upset the cheer team.

Since the cheer team had created a little routine to go with the song, and since it was loop-able (as is the song) we would purposefully put extra measures at different parts of the song, adding extra beats here and there, throwing off the rhythm of their dance. They would never quite figure out what had gone wrong and we wouldn't do it frequently enough to have it be common.

Node ACO

Fri, 03 Oct 2014 14:11:01 -0400

A Dead Colors fan emailed me a request:

Could you, by any chance, make a color palette containing all of the dead colors for PhotoShop?

When I finally found the email I was sitting at the @Scale Conference and decided I'd give it a try. I could have, of course, gone in to photoshop and created a new palette manually and then exported it (which, due to my finding the email late, was what the fan ended up doing before I could respond) but I didn't want to take the time.

I did a quick search for the Adobe file specification for .aco files and found this information by Larry Tesler. The code that generates the dead colors list was originally written in PHP, but I decided that with the specification and a quick refactor I could generate the color file using Node.

I did find something perhaps noteworthy. The spec information says that the versions are 0 and 1 but I could never get the file to work until on a whim I tried using 2 - so either I am tapping some undocumented third version or the values are supposed to be 1 and 2. On top of that I ran in to some issues early due to my not using unsigned integers.

The resulting library is on Github. You give it a list of color information including the display name and hex color value and it will create a color palette that you can import in to at least the latest version of Photoshop. Next steps would include adding reading, but due to the many different color encoding types this will take some time and I really only needed the write capability to satisfy the original request.

The dead colors aco file is available on the Dead Colors page. I was able to send it to the fan but too late. He had already done it manually taking hours of his time.

I may have had to go through the hours of pain of making one myself before receiving this message, but it still makes me so happy that you responded.

It was a fun exercise and I was able to get most of it done while I also listened to talks at the conference.

node-aco on github

Those sites that don't scroll

Wed, 01 Oct 2014 18:13:47 -0400

There is a not-too-recent design trend that websites are designed to not scroll but instead animate or change the information on the screen as the user uses the scroll wheel on a mouse or the scroll bar. A limited example of this can been seen on Dropbox's Carousel site.

As you can see in the video, as the use scrolls downward some animations play and at a certain point the page stops scrolling entirely and only the animations continue, even though the page is still scrollable. There are other, more extreme examples of this as well. Some sites seem to handle this new take on information disclosure in a way that makes sense but many miss the mark and become confusing.

This breaks usability. The animations are visually interesting and the end result (displaying more content) is essentially the same, but there is no longer a 1:1 mapping of the actions a user takes through the interface or the input device to what is happening on the screen. The timeline, for lack of a better term, becomes arbitrary. The different portions of content are harder to track because they lose their sense of placement on the page. If a user is using touch device to scroll then that relationship can be further harmed. (Though in the case of carousel, the site removes this and scrolls as you'd expect).

Timeline may be the right term to use inasmuch as the design of the pages treats the scrollbar like a scrubber going through the time of some animation or even a video, even though the presentation is interactive. If the designer wanted to present the user with a timeline of information then she/he should stick to a more readily identifiable mechanism for the same.

It can also be tempting to misuse animation. Animation really isn't the issue, though. The issue is the disconnect between the scroll action and what you see visually on the page in terms of mapping movement. You wouldn't turn the page of a book and have it only change the picture on the page you are on. That is a bad comparison, but the idea is the same.

Let pages scroll, otherwise use a different navigation mechanism and make it obvious.

A Better Random

Mon, 29 Sep 2014 13:44:14 -0400

Getting a random value in JavaScript is pretty boring;

var random = Math.random();

This will give you a floating-point, psuedo-random number between zero and one. This is not very random. When I ask for something random I should be able to get back whatever. Spork. Waffles. Things that are totally random and cool.

That is why I've taken the first step toward making Math.random more random.

As you can see, this updates the regular Math.random to also sometimes return a totally random string (cheese). (This is another example of how random it should be.)


A Deepening Feeling of Indifference

Fri, 26 Sep 2014 18:04:19 -0400

I am at an interesting point of my career and the only name I seem to be able to give to it is indifference. In the last six years I have been at Flite the world of software development has changed and not even just once. I do not expect it will slow down either, but my willingness and interest in keeping up has certainly waned.

Recently I have been surveying the job landscape and technologies that didn't even exist (or were definitely not mainstream) three years ago are now listed on almost every job description. There isn't anything wrong with that necessarily but I haven't personally had the time nor inclination to try and do anything with those new technologies but if I wanted to go get a new job I am now expected to know about them.

What makes things seemingly worse is that, in my casual observance of the landscape, we seem to be loosing any subtlety and compromise and instead everything turns in to a Holy War. Everybody is looking for people who are on the same side. Which platform do you use? Which text editor? Which project management methodology? (Which phone platform? Which OS? and on and on) The big players like Google and Facebook and Twitter then throw their weight in the mix. Sometime I think it is because that, as large companies, they don't actually have enough work to do and so spend their time dreaming up their own ideal vision of how things should work. And why shouldn't they? I am still not convinced that their ways should be my ways but it looks like there is no avoiding making a choice.

Take bower for example. It is neat and works as it says on the tin, but I cannot figure out how or why I'd use it in a production environment. If I need to download dependencies I can do that and package them. I am not about to change my deployment infrastructure just because a new tool exists to replace something I maybe do one or twice a month, tops. That said, maybe I am missing the bigger picture. I guess the point is that right now I don't care.

I will own up to the fact that I am falling behind on my own school of thought that if you like something you will do it on your own and gain experience through trial and error. It isn't like I've been sitting at work doing nothing. We don't always have the opportunity to adopt new technologies at the drop of a hat and if we did we might not ever get anything done. I could try harder to stay current.

This complaint is not original nor unique. I feel a little bit like an inflexible curmudgeon by admitting these reservations, but what else can I do?

I am just getting tired of feeling like I need to have an opinion about everything. I am much more comfortable saying that I will use the best tool for the job as I find them, but if "the industry" is going one way I guess I also don't want to be on the side that gets left behind.

Update: This video is great.

Portfolio Update

Tue, 12 Aug 2014 01:57:52 -0400

Scratch it away!

Its been like eight years since I updated my personal portfolio but I'm glad I did it.

Check it out.

E.ggTimer Update

Tue, 01 Apr 2014 23:59:25 -0400

I was informed today that E.ggtimer gets too much traffic to remain on my original hosting plan which is both exciting and scary. In response, my web hosting provider shut it down without warning. I was able to get it set up on Amazon's services using EC2 - so hopefully it will run smoothly and now allow me some freedom in terms of feature enhancement.

E.ggTimer was down for several hours today. Sorry for the inconvenience.

March 7th, 2014 - (DavidLeMieux)

Fri, 07 Mar 2014 20:20:09 -0500

I hereby decree that while the world has moved on from feeds and blogs, or at least appears to have done, I feel like what we've lost isn't completely replaced by what we've gained. That said, I communicate more than I did before, in spite of the connections having less meaning.

Please 0.0.3

Fri, 07 Mar 2014 20:17:05 -0500

I've made some minor tweaks to please. Now inputs use readline instead of stdin so that command line tab completion can work. Second, if you mistype an alias it will try and show you something that might match. This second part is super fleshed out, but if you leave out a work or a character it should at least show you something.

Robot Costume

Sun, 15 Dec 2013 23:12:39 -0500

Halloween is my favorite holiday. Other holidays are also great, but Halloween is the one time a year I have an excuse to make something that would otherwise seem unnecessary. Usually I decorate my car for the annual Trunk or Treat. This year, however, my son wanted to dress as a robot with "lights and working gears." And so I felt compelled to grant his request. Full costume, sans wearer My wife and I decided to team up. I did most of the robot body and electronics and she did the other decorating and made some cool pants and other accessories. The front ended up having two sets of LED lights. One set blinked at an interval, the other chased back and forth. A third set of lights, in the head/helmet, ran in a circle. Two sets of lights and some decoration Switch controlling the lights A switch on the left side of the costume, reachable by my son, controlled the lights in the body. The body and head were made with carboard boxes that we taped up and painted silver. I glued an extra poster-board panel on the front to give it a cleaner looking finish. On the bottom of the front panel were spinning gears. I made those out of high-density foam and connected them to a gear box and electric motor that were inside the box. I cut the gears from a template but since I don't have a band saw I cut them by hand and therefor they were quite inaccurate and would jam frequently. Fortunately since they were foam, any fingers or other things that got trapped in them were safe from harm. Foam Gears Push button switch The gears were switched on by a push button on the right side that my son could use whenever he wanted to add some flourish to his costume. While the lights could stay on as long as they were turned on, I made the gears operate with a push button that had to be held so that they wouldn't run all the time, draining the batteries. Also, the motor and gear box were kind of loud. The wires were all just on the inside of the box. Wires, taped in. In the end, my son loved the costume and everyone we met while trick-or-treating seemed to enjoy it as well. Many houses we went to even claimed to be giving him extra candy just because the costume was so great. There was a costume contest, but he lost to some very well made life-sized Star Wars Lego mini-figs (sorry, I don't have a picture.) Video [...]

I Was Terrible

Thu, 31 Oct 2013 11:45:26 -0400

In High School a few friends and I had this idea that the local marching bands, which competed in marching competitions, should also have a friendly flag football game. Instead of asking the schools for permission we organized it ourselves and put homemade signs up sheets in the other schools' music rooms asking for band kids to sign up and contact us. We put our own names and contact information, mine on top.

We may have used some copy that didn't sit well with school faculty who found out. Something like "get revenge" or "beat down your opponent." The schools, not wanting any liability, put an end to it. During Wind Ensemble one morning in front of the whole class our music director called the three of us out by name and asked why we would even do such a thing. In that moment, caught off guard, I failed myself. I shrank. I didn't respond. I pointed to the other guys and essentially threw one of them under the bus.

I am ashamed. I was a coward.

I think about this event often. I am still friends with one but the other I haven't ever talked to since.

Sometimes when I think about what happened I can't decide if I've gotten any better at taking responsibility for my actions, especially in public settings. Had the director pulled us aside privately I may have done better, but in front of my peers I did something terrible. I lied and lost a friend.

Development: CSS and me

Sat, 14 Sep 2013 00:18:17 -0400

CSS is a powerful language used to describe how a webpage should look. It has come a long way over the years and can be used to create seemingly limitless design. Except for when it can't.

I am not great at coding with CSS. I will admit right here that while I have an understanding of the language and the way it should work, I couldn't get by without having to look up every property on the web. I feel like I must not be approaching web design in the right way because I look at all the wonderfully designed websites in the world and it becomes apparent to me that CSS can do a lot and is used to great effect. Whenever I try to use it I bumble around and ultimately end up in a situation where nothing seems to work.

For example: vertical centering. I know there are ways to accomplish it but it always seems like I am implementing a work around and not letting the language do its thing. Why can't vertical-align: middle just work?

Another thing I find myself wanting is a way to do math in the CSS. I know with things like SASS some expressions are available, and I know, as with vertical centering, there are ways to get this done, but doing something like having one box be 100% width of its container minus 10px would be more awesome if I could just write 100% - 10px. I understand there is support on the way yet I remain confused why we don't have it already.

Really this is the rant of an ignorant developer saying something is 'too hard'. I can certainly try harder and try to learn and apply the styles as needed to achieve my desired output, but so many times I find myself trying and then just revert to JavaScript because it seems to be that much easier.

Each new design project I get I try to use CSS as much as possible. Last year's family card was just such an exercise. I also want to be clear that I like to design and lay things out. I am not just a coder why has to do a GUI from time to time. That said, CSS seems to provision and provide for great depth in design and layout, yet the simple, obvious answers never are.

I will continue to learn and try and grow, but I also have CSS will do the same. We can grow together. Hopefully in another year you'll hear me singing the praise of CSS and looking back at this post with some embarrassment.