Zen of echnology
Living at peace with technology &
helping you effectively use technology.
Zen of Technology is a mailing list and resource for navigating daily life with the technology around us. Our goal is to provide modern day humans the tools they need to be happy, productive, and to create wonderful experiences.
Join the email list
Good Time to Update
The Whole Picture
- Now is a good time to update your software
- Periodic updates can be good
- Remember to keep devices plugged in while updating
Over the last few months there have been two very huge security scares - or better put, security people have learned how to market major issues. Security flaws are found quite frequently, but they are usually named things like CVE-2014-6287. Hard to be scared or excited about that. Either way, the latest two major security issues - Heartbleed and Shell Shock (much catchier names, no) - actually have very large potential implications. I wrote a post about Heartbleed
a few weeks ago. For the average person, not much needed to be done - it was something for a system administrator to fix. Shell Shock is completely different.
Shell Shock affects a standard user's computer. Anyone running Mac OS, Linux, or Unix. Normal Windows users are fairly safe - but not completely. Believe it or not, some devices such as printers, external hard drives, and even internet routers run versions of Linux.
What Does Shell Shock Do?
The vulnerability lets - in certain circumstances - any command be run on your computer. This could ultimately someone write a virus to do nearly anything on your computer and without your permission (wouldn't even ask you to install anything).
The good news is that the issue was fixed and updating your software should solve the issue on most devices. So, while most people see "An update is available" and click "ignore" I highly recommend that you take the time to update, especially if you're on a Mac.
It's good to update on a regular basis.
Updates can be a pain, they always pop up in the middle of your work, and require you to restart your computer, etc. Mark on your calendar once a month to make sure you update your phone and computer. Big and small security issues are discovered all the time, and updates keep your device safe. Often hackers/virus writers don't know about a flaw until it is discovered and fixed but will still write malicious code to take advantage of people who don't update.
Delete, Discard, and Trash
The Whole Picture
- Reduce your digital waste
- Ask yourself "Am I adding value?"
I've written quite a bit in the past year. But for every email I sent, or post I hit publish on, it's likely there was one that got trashed. In fact, before writing this, I started writing two other posts, only to discard the draft. I used to write because I wanted people to be impressed by me. I wanted to take advantage of every opportunity to come up with a smart solution to someone's problem or talk about something I did hoping people would think better of me. Ironically, my desire to talk got in the way of my ability to listen - the only real key to finding the best solution.
My new years resolution was to say less - but with higher quality. Not everything we create is wonderful, and sometimes the only lessons to be learned from a piece of writing are for you alone, and it's better left unpublished.
It's also hard to put your foot in your mouth if you don't open your mouth. Not every problem needs a solution, and nearly all people would rather keep talking to full explain what's on their mind than have you interrupt them with a solution. Additionally, just because you have an opinion doesn't mean it is informed or that it will further a discussion - it is completely okay to be an active listener while others discuss a topic.
At first it was hard. I would spend 10 minutes writing an e-mail and I felt like I had wasted my time if I hit "discard." I would question "What if some value would be added by what I said?" Then I realized this - how many people's time will be wasted by stating something that doesn't truly add value. If I were a baker, would I ever want to sell a cookie that was a little burnt? Even if the last 10 batches were perfect, would I rather sell a burnt cookie, or simply not sell a cookie. Sometimes you have to toss the cookies.
Every interaction we have is like a cookie. They come in different varieties, and different people have different preferences. Also, if all you did was give away your cookies, you'd go hungry, and if you just ate, you'd be overweight. The right amount of sweet, sour, and savory leaves people wanting more. Too much bitter, or even sweet leaves a bad taste in people's mouth. There is no shame in tossing a batch of cookies. No one is perfect, but what separates the true professionals from the amateurs is that the professionals know when to press delete.
The Value of an Idea
The Whole Picture
- Ideas alone are essential useless
- The value lies in execution
When I was in college, I had an idea for the next big video game. At the time, games like Everquest were huge and the game World of Warcraft (the highest grossing
video game of all time) was in development and slated to be released. The gaming world was ready to open their wallets and pay huge amounts to play games that would provide them with endless hours of game-play. I had an idea for a game that could have been huge. But this isn't about that game, so I'll spare you the details of how the game would have worked.
At the time I had this idea, I was running College Boredom and as a sub-site, I created a game called Boredom Ville. Boredom Ville had massed a few thousand users, many of which were paying for additional perks within the game. So, armed with my minor success with Boredom Ville and my great idea, I enlisted the help of a professor of mine to get a meeting with a major game developer to sell my idea.
I was lucky and was given the audience of a senior project manager. I was allowed 1 hour to sell my idea to this person. I spent days perfecting my presentation, and walked into the meeting with a great Powerpoint presentation as well as a batch of freshly baked cookies. While I wasn't quite as experienced as I am today, I can honestly say that I nailed the presentation. All the cookies I brought got devoured, everyone watched with awe (one of my teachers, as well as my dean was also in attendance). I even heard a few "wow" and "awesome" here and there. 45 minutes went by and I got to my final slide. It had the words "Thank you for listening. Questions?"
I got a question I was expecting, "Where's the demo?" My response was something eloquent, but in short I said that I only have the idea, but I was pitching the idea so that I could be hired on to produce or project manage this game and see it to completion. I even showed a very reasonable budget for how much it would cost to build. I'm not sure what I expected as a response. I guess I hoped for a job offer, or maybe even an investment proposal. What I got was shocking at the time. The response was, "Build it, then we will produce it."
I then learned that "produce" meant they would put the final product in a box, and put the box in stores and get it distributed and take 15-20%. I would have to front the cost of development, and build all of it. I was in awe. At the time I was angry, and even challenged the person to say "If I have to fund and build this, why wouldn't I just distribute it myself?" Needless to say, I was never given the opportunity to build this video game, but, thanks to an NDA, this company is also unable to ever build my idea for themselves.
For years, I was always frustrated by this experience. How could an idea be so worthless? How could a company be so audacious to believe that they can take my finished product, slap their name on it, put it in a box, then take 20% (which is apparently a fairly reasonable, if not low, distribution/production fee). Business school didn't prepare me for that one - maybe an MBA would have, but not undergrad.
Since then, I've had lots of ideas. Many of them crazy, unrealistic, or simply not commercially viable. But a few of them were genuinely good ideas (in fact, others have also had these ideas, and successfully executed on them, many of which are thriving businesses). I remember one time thinking to myself "They stole my idea." In fact, I've heard many people say that. But, it took me a long time to realize that ideas are rarely unique. In fact, good chance is that someone else has had your idea. For every idea acted on, there are hundreds passed up.
Where value lies is in the ability to turn an idea into reality. A great idea, executed poorly, will have poor results. A good idea, executed excellently, will have excellent results. It is actually better to execute very well on mediocre ideas than it is to execute poorly on amazing ideas. Take Starbucks. There is nothing terribly genius about a coffee house. It was not a unique idea, it was far from the first coffee house, but Jerry Baldwin, Gordon Bowker, and Zev Siegl executed their idea in an amazing way.
Working in the world of start ups, I've seen many failures. Many of the companies that were fellow start ups a few years ago, are no longer in existence. Some of them had amazing ideas, some of them had terrible ideas. What is always shocking is when an idea that you think is terrible or crazy becomes a success, but more confusing is when an idea that you think will be huge simply flops. Looking at the big picture, I realized that I was looking at things the wrong way. I judged a business based off it's founding idea, and not it's implementation plan. When I looked at things from that perspective, things made much more sense. Those crazy ideas suddenly seemed more viable because their management team played to the PR strengths of the craziness, and capitalized well. The companies with great ideas that flopped failed to listen to their market, or failed to create a strong team and product.
The same principles apply anywhere. When writing a book, the ability to weave a good story that is consistent, and the ability to resolve the story in a reasonable fashion is actually more important than the idea itself. As always, a bad premise or story will lead to a flop, but the ability to consistently weave an interesting story is what is key. The best writers can do that book after book.
No matter what you're doing - planting a garden, taking a road trip, cooking a meal, writing software, or even just being a good friend - the key is knowing what your goal is, and being able to get there. The idea (or destination) is simply a point on the map, your ability to get to that destination creatively, and with as much excitement as possible is the key.
The Whole Picture
- Outsource the task of remembering lots of short-term tasks
- Be mindful of how you're using memory (both technical and human)
- 7 is the magic number of things we can remember
According to Miller's Law
, the human brain can store between 5 and 9 (most commonly 7) objects in short-term active memory. I've always tried my best to be a man of my word, and in doing so, I needed to ensure that I remembered to do everything I agreed to do. In business meetings, I did this by always taking notes. I even have a system for marking items that are follow-up questions, tasks, etc. But, in my personal life, it's not very convenient to carry around a notebook and take notes during conversations - so I use my phone.
In a previous post, I noted about how I use an app called Any.do, which is a very simple task-management (really it's just a list maker app) and it has been great for me to offload short-term memory management. For tasks that are time-sensitive - "switch over the laundry" for example - I create a calendar item with a reminder. An hour or so later, I get a notification that I need to move the laundry. I free my mind from having to remember about the laundry.
This sort of outsourcing is wonderful as it not only frees up processing and storage in your brain, it also reduces stress - as you never have to worry about remembering little things (or worse, forgetting things).
Now we get technical. Computers are similar to your brain in that they have two different types of memory - RAM (similar to short term) and a hard drive, similar to your long-term memory. RAM is extremely fast, but much more expensive than a hard drive (as of writing this, you can get a 1,000 GB hard drive for $50 or 4GB of RAM for $45. While 4GB is quite a bit of storage, it can get used up very quickly, especially when writing inefficient or sloppy code. While web programming doesn't give you much control over how to do memory management, the rules by which the browser does manage memory is well defined.
Whether you are programming or simply trying to remember a grocery list, it's important to determine the best way to store that information to keep yourself and your code efficient.
Who Moved my Button?
The Whole Picture
- When a user looks for something, they have an expectation on where it should be.
- Put your buttons and actions where the user expects them.
- In nearly all other cases, people love to be surprised and delighted.
Continuing in my thought on identity, I was trying to justify the concept that "variety is the spice of life" and the "who moved my cheese" principle that people dislike change at first, even if it is for the better. Often times, especially in the hard sciences, when you have two conflicting theories or concepts, only one (or neither) is correct. But, in the social sciences, it is possible that both could be true - or at least that both could apply at the same time without conflict.
I set out to try to identify situations where we love consistency yet variety. I came up with tons of examples. When in a long-term relationship, we love seeing the same person, but appreciate when they wear a variety of clothing. We like driving the same car every day, but would go crazy listening to the same song on repeat during our commute. Everywhere I looked, I found specific attributes that are more desirable static, and others that are more desirable as variable.
When designing or creating anything, it is important to determine what attributes should remain similar to a user's desire, and what can be different. If you're designing a car, you want to make sure the gas pedal, brake pedal, and steering wheel are in the same relative position as every other car - that's something people want static. But, when designing cup holders, the radio controls, etc, you have much more freedom. When it comes to products of all varieties, I imagine there are much more variable attributes than the current designers imagine. But, inversely, when it comes to the internet, it feels to me like designers see too many items as variable when indeed they should be viewed at static.
There are certain design concepts that are pretty standard for nearly every website. Take sign in and sign up. While there are some well-defined design principles around this, I've seen all manners of sign in and sign up forms that have buttons in all different locations of the site. With the advent and the rise of mobile phone use (and small device use) designers rushed to optimize. Now, different paradigms exist for a user. You have the same website/app on your phone and your computer, but what are you expectations for functionality or button placement? If something is a static element, then as a user, I expect it in the same place in all experiences. If it is not, it causes me confusion and unhappiness. But, if the button is exactly where I was looking for it, that makes me a happy user.
Identity is one of the strongest concepts of both life and technology. Identities define who we are, what we can - and cannot - do. They are extremely powerful, but with all power comes the potential for abuse.
To be honest, I've written this post many times before, yet, deleted them over and over again. By the end, I either failed to clearly get my message across, or simply tried to say too much in 1000 or so words. This is such a critical topic, that I wanted to do it justice. I wanted to make sure that my words were clear, my story complete, and that people came out with a better understanding of the power of identity and how it can be used to make themselves better and to make their creations better.
The best place to start is probably the beginning. When I was a kid, I was different from others. And I had an ego to boot. That combination made me an easy target for bullying. At the time, it wasn't a pleasant experience, but I can happily say that I made it out alive and with no physical scars and minimal emotional scars. In fact, I'd even say that if it weren't for the teasing and the bullying, I wouldn't be the person I am today.
It was either the summer before my junior or senior year of high school that I realized maybe it was something I was doing that brought about all the teasing. At the time I couldn't quite grasp that I wasn't perfect, but I clearly saw that people didn't see me as perfect. The question became - how do I bridge the identity crisis I had that the identity I had for myself was different from the identity that others had placed on me. This disconnect lead to miscommunication, and probably a large amount of bullying and teasing.
So began my yearly quest to re-evaluate my identity. It started small - I tried to go through a week in my life in third person. I watched my mannerisms, my words, and how they affected others. Annoying traits that I had, I tried to suppress, and things that people enjoyed, I tried to accentuate. It made things a little easier, but it didn't get to the root of the problem - the identity I had given myself was not in tune with reality. No amount of acting would change that.
After a few years of re-evaluation, I came across a crazy programming concept of the completely-mutable object. This is a concept/object in which you do not predefine any functions or attributes. They are all defined when the application is run. This allows for great flexibility, but arguably, too much. Imagine a car being able to transform into a plane, then a house, then a horse. A drive down I95 becomes a bit more complex, no?
I discovered this concept around the same time as I was taking my yearly re-evaluation and I had an epiphany - maybe humans have a completely mutable identity, we just refuse to change the values. This thinking took me down a path of complete mutability. I mirrored the personalities of whomever I was spending time with. I tried to give up the attributes that I thought were me while taking on new attributes. The experiment had interesting results, but ultimately ended in failure. For those who didn't know me, they accepted my identity as whatever I showed them, which was very much a mirror of themselves. For those that knew me, my changes caused confusion and uneasiness.
Ultimately, a mutable identity made me lose a sense of self, because I never knew if I was a car, plane, house, or a horse. But, the experiment showed me that I don't have to live in a box, and that I can have fun if I just let go. It also taught me the power of perception. Following this experiment, I quickly fell back into the old me, mainly because that is how others saw me and it was easier for me to accept that identity than to try to forge yet another.
Identity is a powerful force. It is what leads to racism, hate, and mislead ignorance. Evolutionary, it probably has some strong purpose. We can learn which animal species we can trust, and which we must avoid. We can learn behavioral patterns and apply them to other animals of the same species to best capture them or avoid being their prey.
Ultimately there are three identities in play when dealing with another human. There is the identity that person believes, the identity you have formed from your interactions, and the identity you've inferred. Inferred identity is where bias and prejudice comes from. Someone wears a specific type of clothes, therefore they must be in a gang. If they are in a gang, they are dangerous. If they are dangerous, they should be avoided... All of that inferred simply from an article of clothing. Unless it's a shirt with a gang slogan or emblem on it, with gang colors, in an area where that gang resides, it's probably off base.
But then there is the more subtle identity crisis. The one between the identity you've given someone and the identity they believe is their own. Chances are, neither of those matches with reality, which increases the chances that those two identities differ. It is true that first impressions are amazingly strong. The identity you associate with someone when first meeting them sticks hard. Meet someone when you're having a bad day? Chances are it will take you a long time for them to update their identity of you.
These disconnects lead us to fear and miscommunication. How many times have you thought "X will may this person happy" then done X, and it didn't make them happy? From their side, they think, "How did they not know Y makes me happy?" Everyone feels dissatisfied, simply because there was not an acknowledgement of the identity gap. Worse is when we refuse to accept that an identity has changed. Treating an adult like a child, or a smoker who wants to quit as still a smoker. By pushing your concept of an identity on someone else, you could make it more difficult for that person to change their own identity.
I used to think it was love that would save the world - compassion. While we need compassion, the only thing that will save the world is education, understanding, and an acceptance that identities are both mutable and powerful. There are religious zealots who cannot let go of words spoken over 1500 years ago and continue to fight and kill an enemy that they cannot possibly reason with. The identity gap is simply too far. Around the world, there is conflict everywhere that stems so greatly from identity gaps. Pride and the inability to accept that the identities you have for people and yourself may not match up with reality have held us back from such great progress.
This is normally the point where I read through what I've written, and delete it all, because I've failed to convey my message, or worse, failed to come up with a conclusion that tied it all together. While a better writer would have done a much better job, this message will reach your eyes, and hopefully the message will be clear. I have no conclusion, and by far I have no solution. But, I hope to continue to educate, and to share my insights and maybe even inspire people to be happier, and to help others be better. It's hard to think of myself as a grown man, because inside I feel like a child, still searching for his purpose, searching for his identity. I've spent years refining, chipping away at the ego I hated so much, and trying to bolster the good. I've come so far, but my journey has barely begun.
Thank you, as always, for listening.
The Whole Picture
- We have a responsibility to do the right thing
- Our responsibility is derived from a desire to persist the human race
When we produce, we affect the world around us. Every action we have has consequences. Every plant we plant reduces carbon in our atmosphere, while every mile we drive in our car increases carbon. Every mile we walk instead of drive saves potential emissions.
But there are less black and white cause and effects. I started my corporate life in the Finance industry. For the most part, the products we created helped the rich get richer. At the end of the day, I wanted to have a more positive impact on the world around me, so I got back into the start-up world working on products that provided more value to general consumers.
But, on an even smaller scale, the decisions we make - such as build or buy - when it comes to software or technology make a great difference. You could upgrade your phone every 2 years, or every 3. The amount of waste saved by upgrading every 3 truly adds up. Also, when faced with having to create your own solution to a problem, if you can find an existing solution, you can save yourself days of work with simply a small amount of up-front research. This time can be spent solving bigger and more complex problems.
Education is the crux of all of this. We must constantly learn about how our world works. Everything we do has a cost, and it isn't always in dollars. In fact, it's often the items that cost the least amount of money that have the greatest overall cost to the world.
One Size Does Not Fit All
The Whole Picture
- You cannot be all things to all people
- You can only solve one problem at a time
Last week I attended a Think Tank of sorts who's purpose was to create the perfect bookstore. It was a two-day event for which I was a passive participant (I listened in to the live-stream) on the first day, and attended the second. The first day was full of excitement and grandiose ideas. Terms like "zero-click reading" were being tossed around, and the team seemed to believe that they were about to create this world where authors were well paid, readers were getting the best prices, and everyone was perfectly happy. While all of these goals are great, reality set in on day two.
The first thing we realized was that, assuming all our assumption were correct, to build this new bookstore would take resources far beyond our means. As we tried to narrow down the purpose into an MVP (minimal viable product) we started to realize the struggle between what is good for one party, what the current publishing ecosystem supports, etc. Ultimately it can be summarized by noting that there is no perfect bookstore for all players.
In attempting to create something that is meant to solve too many problems, you are often left with something that doesn't completely solve any problems, and tries to fit in places it should not. This isn't to say that everything you create should be a single-purpose device, but think of the best multi-tools (leatherman, swiss army knife, etc). They have eight to ten tools, but all of them solve common and different problems. They are small enough to comfortably fit into a pocket.
One final note - you don't even need to solve a problem of the masses. There are plenty of under-served demographics, such as people with disabilities, where technology could greatly benefit.
The Whole Picture:
- Basic breakdown of different types of compression
If you've ever worked with images (either by sending digital photos, or building anything with a graphical component) you've probably encountered some of the major image file formats such as GIF, JPEG (jpg) or PNG. Those are some of the most common ones, but there are probably a few dozen different image file formats. They are all a little different and what differentiates them is compression and quality.
A digital image is essentially a list of colors. Each color maps to a pixel, and when those pixels are put next to each other, they comprise the image you see. Since today's cameras (even on your smartphone) take pictures in megapixels (the latest iPhone takes pictures that contain 8.7 million pixels). If you wanted a rich set of colors, such as 16-bit color (about 32,000 unique shades), you'd end up with a 16 megabyte image for every picture. That would be unnecessarily huge.
(If you want to know which image file format is best to use, check this out
Now we get to compression. So much data is redundant. For example, instead of the full 32,000 colors, you could limit the amount of color choices and greatly reduce the file size. This is obvious - less options, less size.
Then, we get a little more thrifty. Since frequently, two pixels that are next to each other may be the same color (or very very similar) you could simply combine them into one pixel. Now, if you had 3 or 4 in a row, you could just say "repeat this color 4 times" and use 30% of the space that repeating the color 4 times would use. If your image frequently re-uses the same color, this could lower the file size from 16 megabytes down to 3 or 4. At this point, this is where "lossy" and "lossless" compression come in. Lossless would require that the two pixels be exactly the same color (hence no actual information was lost). Lossy would say "as long as the colors are close." Most of the internet uses lossy compression for images. It is much more efficient at reducing file size, yet it produces a bit of a blurring effect.
The last way to compress an image is to create an index. For this method, a program analyzes the image and comes up with a set number of colors - usually 8, 16, or 64 (although any multiple of 2 is possible). It scans the image and assigns every pixel to be the closest match to the 256 colors it chose. This allows the image to remain fairly crisp, but reduces the color range greatly.
The final isn't really compression, but it's about reducing file size. Often a 10+ megapixel image is simply gigantic (3000+px by 2000+px). This is extremely large and more than what most monitors and screens can even display, so what you see is the image shrunk down. By simply reducing the file size (although always try to do it by a factor of 4), you can reduce the file size greatly without losing much quality (although you lose the ability to zoom in with high quality).
Reduce Unnecessary Dependencies
The Whole Picture
- Limit what you absolutely need
- Know your alternatives
- Recognize when dependency could lead to catastrophe
No man (or woman) is an island. We depend on others and their expertise to make our lives easier. This is the reason we have skyscrapers, the internet, and cheesecake. But, it's important to understand when you are being helped by someone and when you are dependent.
For those who are unfamiliar with computer programming, a good analogy would be to equate it to building something with Lego. All the pieces are there, and you really only have a limited number of pieces, but the way you put them together makes a castle, a space ship, a monorail, or a jungle hut. Coding is the similar.
, and Underscore
(to name a few), and for HTML/CSS developers there is Bootstrap
. There are also plenty of hosting solutions that will store and run your code for you. The value these services and frameworks offer is immense. jQuery took hundreds of developers contributing over many years to get it to the state it is in today. Developers are still working on it.
But all of these frameworks and services have pros and cons. To be as useful as possible, these frameworks include a large amount of code that takes up space (and sometimes processing time) that your application may never use.
In code, and in life, I've found myself relying very heavily on certain services, and code. Some riskier than others. For example, if the jQuery foundation were to close up shop tomorrow, I'd still be able to use the code on my sites now, and it would remain relevant without updates for a few years to come. But, there are certain retailers I purchase from, and service providers that I depend greatly on and spend quite a bit of money. Are these businesses good in the long run? In my quest to save a few dollars, am I potentially taking a job away from a neighbor? Or, if Gmail decided to start charging for personal email (they won't) would I have a plan to find another email service?
I recently switched from having an iPhone and a Mac (I still have a Macbook Air for my laptop), to having an Android phone and a Windows-based desktop. The biggest change was that things were less integrated. At first, it seemed a bad thing - an annoyance. But, after I found a few pieces of software to address most of these issues, I actually realized it was a wonderful thing. By separating out services, I now reduce the risk of catastrophic failure. It's the difference between pouring 10 glasses of water, and spilling one, or spilling the entire pitcher.
500 Year Plan
The Whole Picture
- For everything you make, think about it's affect on the future
- The future will outlive you
Back in business school, I learned about W. Edwards Deming
. Back in the 1950s, he tried to woo US businesses with his strategy of Plan-Do-Study-Act (which is the basis of Six-Sigma for anyone who's involved in project management). American businesses - flush with great success following World War II didn't take well to his ideas. But, Japan, having been devastated by the war welcomed him as one of their own. He revolutionized the Japanese industrial complex and is often credited with helping to make them the superpower they are today. One of the things he learned while there and brought to his teachings was the concept of a 500 year business plan.
There are companies in Japan that are over 1000 years old
. Deming was fascinated by this and determined that it was very common for Japanese businesses to have a 500 year plan. Something insane for an American business to determine when America was barely 300 years old. While there was always a focus on both today and tomorrow, with a look into the deep future, these businesses were playing a strategic game of chess while others were playing checkers.
Science says we won't live too much past 100. Chances are, only a small percent of us living today will break the 100 mark (although, science often proves it's prior self terribly wrong, and could create immortality, but for today, we'll assume 100 is a reasonable cap). So why have a 500 year plan? The reason is - our children, our neighbors children, and our community will survive 500 years - if we make it part of our plan.
Technology is about creating and destroying. Hopefully you're destroying the things that are bad and unnecessary, while creating things that are good and create positive value. But we always need to ask ourselves - what is the 500 year impact of my choice, and what are my 500 year goals.
Imagine a large coffee shop chain that was making a decision to overhaul the cups they give out with their beverages. They could choose the cheap plastic non-recyclable cups, the slightly more expensive paper recyclable cups, or to ask all customers to use reusable cups (even more expensive). If you are looking for quarterly results - the cheap cups will boost your profits. But, when you look at the 1 year costs, the increased garbage, land use, and environmental impact of the cup creation, things start to add up. Look out 5 years, and things are pretty messy. 20 years and it becomes a non-option. Even looking at the recyclable cups, you realize that there is environmental impact from shipping the cups (which may take 5-20 years before the cost becomes a real factor).
The same goes with technology. Do you upgrade your phone every year? What do you think happens to your old phone? Is your new phone environmentally friendly (let me answer that for you - no, it's not. If you have an iPhone, you should probably plant a few trees to offset the negative effects of it's creation/disposal. If you have a different smart phone, you should probably still plant a few trees, but maybe a tad less).
Every decision we make - from the cars we drive, the devices we use, to the software we write - will have an impact on the world around us. Often it's a mixture of positive and negative. But, we should always ask - what is our 500 year goal, and will our actions today make that goal possible.
The Whole Picture
- I have a mini-guide (ebook) coming out soon
- It's "Stress Free Email"
- Will be free for subscribers of this list (donations welcomed)
- Price will be $4.99 - First week special of $1.99 - please help spread the word
One of my personal goals is to publish. I work in the publishing industry, and I feel the best way to learn is to dive right in and experience it as both an insider and a cog in the machine. My goal is to engage in different methods of publishing - self publishing, traditional publishing (were I get backed by a publisher) and non-traditional publishing (such as using this mailing list). I've also created a small publisher named "Zen of Technology Institute" which will cover all Zen of Tech books I self-publish as well as other books of friends and family (do you have something that would be good to publish under Zen of Tech Institute? Let me know!)
The difference between writing a book or mini-guide as opposed to writing for the mailing list is that concepts need to be coherent and the story needs to flow. I wouldn't dare just organize these emails into a book, slap a cover on it, and expect anyone to buy it. Not that the content isn't good, it's that it lacks a story, it lacks glue holding it together.
Each mini-guide I produce will cover a single topic and tie things together. Beyond the information I've provided here, I'll provide additional context, and put forth information in a way that is more memorable and more enjoyable to read. The guides - with few exceptions will be shore. The first guide will come out July 15th and is "Stress Free Email." I will be providing it free to subscribers. I will send you all a special link to download the ebook which will be active for 1 day. Others will have to pay $4.99. As an additional promotion, I'll be offering it for $1.99 for the first week. It will be available on every platform and DRM free.
If you have any requests for topics, please let me know!
Thank you for reading.
Sex, Religion, and Politics
This is not a post about technology - but a post about humanity, doing what's right, and making the world a better place.
I was taught - as I'm sure many others were - not to talk about sex (gender, or the act of love making), religion, or politics. They are supposed to be taboos. The reality is - if we don't talk about those things, we are doomed to let those in power make decisions for us. Just yesterday, the SCOTUS (Supreme Court of The United States) made a ruling
that businesses can decide not to pay for contraceptives for women. There has been much buzz and talk about this, so I hope to address a more wider issue (but it was this specific ruling that lead me to write this.)
Many of the people I look up to in life and in business are women. Many of them have been open with me about the atrocities that women place in the workforce and on the streets. I've always wanted to help, and while I believe I treat women equally in business and personal life, I don't think that's enough. I've tried to engage in conversations - yet humorously enough, was told I was "mansplaining" things. I guess a white male could never offer advice or perspective - or could I.
What not many people know about me is that I have a deep passion for business, ethics, politics, and social order. Part of the reason I took such an interest in Taoism and Zen was my interest in learning about different cultures and religions when I was younger. What's great about history is that we can look back on it objectively. We can dig into the ruling class - because none are still in power to reciprocate - and we can pity the unrepresented because we can distance ourselves from them.
The best means of control was education. Keep people in the dark, and show them your
light. It's much easier to accept the food that's being spoon fed to you than to learn how to grow your own food - especially when there are others who may stomp on your crops for doing so. Education is the key to freedom and equality. Look how well it has done to advance society. We have the internet, cell phones, irrigation systems, indoor plumbing, and netflix! Truly we are a society of great achievements, but there are scientific gains based off scientific education - we still lack the ethical and moral education.
Education comes from freely, calmly, and openly engaging in conversation. Science discoveries aren't made from scientists screaming back and forth about the right way to do things, they happen when scientists work together and come up with hypothesis and test them over and over. In science we can be proved wrong, change our knowledge and that is seen as a good thing - but why is a change in moral compass bad? We chastise a political candidate for agreeing with something one day then disagreeing the next. If there is sound logic for his or her change, we should celebrate that.
For a long time, I've wondered what I can do to help promote equality. Every politician who's mailing list I'm on tells me that I can help them by donating $5 or more. But, I'd rather put my money where my mouth is. Supporting a candidate or cause with money is fine (and scientific causes that need research money need your money more than your mouth :)), but social causes need your words. Open up a dialog with your friends and your family. Discuss
gender equality. Di
religion. Remember that a discussion is two ways. Starting out by telling a person how they feel is wrong is not the right way to start a discussion.
Ask them their opinion, and why they feel that way. Personalize things and ask if they have ever been discriminated or have discriminated others. Talk about their views on local and global politics. What's their feelings on guns? War overseas? Immigration? Some of these conversations may not be easy, but they are important. Many beliefs are imbued on to us - a person of authority (religious figure, parent, mentor) told us we needed to feel a certain way or think a certain thing, therefore we do. Until we actively question it in ourselves, we cannot possibly change our view.
Education takes time, patience, and persistence, but it is worth it. Imagine a world where science stopped learning in the 1900s. We'd be dealing with a serious horse manure problem, that's for sure. The reality is, we learn from our friends and our loved ones as well as people in authority. But, if the only ones speaking are those in authority, we are letting the voices of few control the minds of the masses. Only when we learn to approach those taboo subjects and have open dialogue can we hope to create a more educated and respectful populous.
DIY or Maker?
The Whole Picture
- Be a Maker - focus on creation, collaboration, and the process of making.
- Listen, interact, and give back to the maker community.
The use of DIY (Do It Yourself) started as early as 1910s and was commonplace in the 1950s. It is associated with many things, from home improvement projects, crafts, and technology. It has centered around making yourself the primary doer - the one who buys the parts, puts them together, and does the work without the aid of a professional or expert. Lately, there has been another movement in a similar jest called the maker movement. While communities have been created around the DIY space, the maker movement has been built and centered around communities which aids creativity, education, and success.
Back in 1995, I discovered something called BBSes (Bulletin Board Systems). It was something like a pre-internet internet. You would use your computer to dial in to another computer from which you could send email, play games, write messages on a message board, and if the BBS had multiple lines (which few did) - chat. It was here that I met a bunch of individuals who were the DIY types with computers - they built their own machines, wrote their own software, etc.
What always struck me as funny, is that while it was called Do It Yourself
so many people were there as a support group. You were never alone in a project, and learning was a collaboration. You would write a bit of code, post it, others would comment or post changes, and you'd learn from that. It was like collectively solving a puzzle, where working together cut the time-to-solve ten-fold.
DIY is like looking at history and giving Thomas Edison credit for every patent he put his name on and not crediting the hundreds of workers in his lab. Additionally, by assuming you have to do something alone (be it a new project, or learning a new skill) is a terribly limiting thing. The internet has enabled millions of different communities to exist on any and all topics. Use those communities to bolster your skillset and give back to those communities.
The Whole Picture
- Every month or two, have a checkpoint to reassess priorities, schedule, and habits
- Haven't had a checkpoint in a while (or ever?), do it today!
By nature, I'm a pretty scatterbrained person. If thrown off my schedule, priorities, etc, I'd end up only doing the most important few things, and letting other things fall. Beyond that, after a day of working on the most critical item, chances are I would have lots of difficulty finding motivation getting anything else done. Oddly, I'd be perfectly contented being that way (in fact, it's in my nature). I wouldn't be very productive, and that would also put a pretty big burden on those around me. Despite this chaos, I actually perform very well with a schedule. If I have a regular sleep time, wake time, meal times, etc, I tend to sleep better, feel better, and am ultimately more productive... But, no matter how good of a schedule I get on, life always has a way of throwing that out the window.
In comes the reset button. In highschool, a friend of mine used to tell me that when she was upset, she would sit down and press her reset button (when recounting the lesson, she would point to her nose). Once she was reset, she could start from square one and figure out where to go. I've always used that advice whenever I was feeling unmotivated.
I recently had to do this as my schedule got thrown off for a bunch of reasons. I started with the basic - I set an alarm so I wake up at the same time every day (a little early) and with the weather getting nicer, I've decided to take a walk every morning to get some exercise. Additionally my list of things to remember/do at work as well as at home was getting long (again, making it hard for me to get motivated to get it all done) so I'm currently going through an exercise to create a paper list of everything I need to do, and prioritizing and giving myself goals of eliminating a few tasks every day.
I'll scramble for a few days, and often that leads to super-productivity until I get into a good rhythm and things will be smooth sailing. But, one day, things will get crazy again, but, I will just reset and that is ok.
Check the Obvious
The Whole Picture:
- When diagnosing a problem, let go of assumptions.
- Check things that would make you say "I can't believe it was that!"
Growing up, my family had a tradition of putting up Christmas lights. We were hardly the Griswolds
but we had enough lights and surface area to cover to require an entire day of untangling clusters of lights, determining a pattern, and getting everything working. This was many years ago, and we bought the budget lights, so if one bulb went out, the entire string didn't work. With my father's desire to fix things that are broken, if a cluster of lights went out, he was determined to find the bulb that was broken (or fuse that was blown) and replace it.
Most years went smoothly with only a small amount of clusters out, but one year was exceptionally bad. It was a year where my sister and I were a bit more grown up, so the excitement of putting up lights began to wane. My father, determined to keep the spirit up (and/or driven by my mother asking him to put up the lights), decided to start putting the lights up in the front of the house. An hour or so after untangling and laying out the lights, my father came inside and hunted for every spare bulb and fuse he could find. He went back outside to find the illusive burnt-out bulb. More time passed and he came back inside to grab the car keys - he was off to the store. He came back with $40 worth of spare parts. Mind you - he probably could have bought a whole new set of lights for the front for that price - but he was determined to solve the problem at hand.
At this point I was awake (or had come back from whatever activity I was doing that morning) and he asked for my help. Whenever I was around he tried to set a good example, so normal corner-cutting (measure-once cut-twice, taking small risks, etc) got sidelined. For him, rule #1 when working with anything that plugs in is to unplug it. We go outside with the spare parts and he gave me instruction #1: "Go unplug the lights." I walked over to the plug and noticed the lights were already unplugged. "Hey dad. They are already unplugged." I stared at the plug and placed it in the outlet. The lights magically turned on. My father had set everything up and simply forgotten to plug them in.
We get wrapped up in our tasks, and frustration can often blind us to possible solutions. "The last time this happened, X was the solution," leads us to try X, then when X doesn't work, we look for more obscure of difficult problem/solutions - because we assume the simple solutions were covered. In programming, forgetting a period or semi-colon can cause an entire application to crash or behave incorrectly - such a simple thing. Ever leave your keys in the lock? Always check the obvious.
Along with the release of the newly designed Zen of Technology, I've decided to change things up (again).
The Whole Picture:
- One Zen per week, on Tuesdays.
- Occasional additional zens about technology news & its relevance.
- New format - Zen Digest (high-level, short, to the point) plus extended.
Over this weekend I received a bit of disappointing news - my Zen of Technology book pitch was rejected by an amazing literary agent. It has been nearly a year since I've started Zen of Tech and I've been working on the book/shopping it to publishers and agents for some time. I'm lucky that this is a side project, so I can afford to get rejections until the end of time, but my whole goal has always been to spread a word of happiness, education, and to be honest, a little bit of fame for me. I've had an agent that didn't work out, a few publishing houses that showed early interest, then went silent on communications, and this latest bit of news was discouraging.
The silver lining for me, was the words used. Completely concise, but the agent's words were: "I wasn’t connecting wholeheartedly with your writing, despite its many charms, so I ought to step aside." If you remove all the sugar, the statement boils down to "I wasn't connecting with your writing." Now, I can't change this agent or how anyone feels when reading my writing, but I can change how and what I write. I've been extremely lucky to have feedback from many of you, as well as others and I have taken all that feedback as suggestions to be a better writer, educator, friend, and mentor.
We learn from stories. Oral tradition taught lessons using allegory and fables to teach morals, hunting techniques, and life lessons. That was one thing lacking from my Zens. I interjected a little bit here and there using "for example" but in attempts to make a boiled-down teaching moment, I took all the flavor out. I realize some people just want the meat, and that is why I'll be adding the "Zen Digest" which will appear at the top and summarize the lesson in no more than 3 sentences (or bullet points). For those with little time to read, or want context before reading, that's for you.
The rest of the part will be a personal story. Most will be directly about me, and how I struggled and solved a problem - or should have. Instead of creating hypothetical examples, I'll use my real life as the guiding lesson. In fact, the story above about rejection is a good example (although not very tech related). I'll be keeping the stories relatively short, but I will always tell a complete story.
As for the book, I believe the concept and meat is good, but I need to build a story around it. For now, I'm going to take all the wonderful feedback I've received and work on building this list. By lowering my updates, I should have more time for marketing and spreading the word. A story format for these posts will make it much easier to compile the final content. It will also make it easier for readers to submit their own personal adventures to share with the list.
So, I hope you like these changes, and as always would love to hear your feedback. For those who have been reading for the past year, thank you! For those who are newer, welcome and I hope you enjoy the ride.
Make Someone Smile
The end result of nearly everything we do in life should be to make someone smile. By setting a goal to make someone smile randomly, you will create a much better experience.
Making an application where there is a 10 second wait time? Sure, you could have your basic hourglass or spinner, but what about a smiley face?
Ultimately it comes down to surprises. Have you ever been to an office that has a silly poster up next to the copy machine or office printer? You often have about a minute of downtime while your document prints, and you could pull out your phone and check messages, but you often look around and do nothing. A simple poster gives you something to read - and a chance to smile.
Little things like this add up. Back in college, I ran I website called CollegeBoredom. My roommate, to help promote, printed up signs that said "Thanks to wifi, this stall brings you CollegeBoredom.com!" and it included a random funny image from the site. He stuck them in bathroom stalls around campus. Since smartphones weren't a thing at the time, people read the posters, laughed, and I saw a pretty big spike in traffic.
Get your point across in 30 seconds. You can reinforce it after, but say it quick, say it well, and respect your audience.
When solving any problem, ask stupid questions and ask them first. We've all heard "there are no stupid questions..." but what does that really mean, and what is a "stupid" question. Many feel that a stupid question is one that you should know the answer to: "What year is it?" "What color is my hair?" and "What is Google?" may be classified as stupid questions. Additionally, stupid questions may also be classified as ones for which the answer seems too obvious, "Why would you use an umbrella when it rains?" "Why can't cars drive themselves?" "Why can't it be sunny every day?"
These questions - without any context - are fairly meaningless, but a stupid question with the right context can actually be the most intelligent question.
To address the first type of "stupid" questions - if you need clarity on a term being used, chances are others do to. Ask it early, it will help your understanding and ensure that everyone is on the same page. Many people have correct, yet slightly off-target definitions of things. When a speaker clarifies their definitions, it helps everyone.
As for the second, asking silly questions can ultimately yield to a more creative and better solution than traditional thinking will get you to. Sometimes push your question to an extreme. "What if I ate the same thing for breakfast every morning?" "What if we get customers to answer their own questions?" "What if we reward customers for helping other customers?" "What if we get the art department to design awards for other departments during their downtime?" "What if we pull out all the food about to expire and make a meal with it..." The possibilities are endless and can lead to some very positive results.
The Laws of Nature
From the day we are born to the day we pass, the laws of nature have set our expectations for the world around us. What comes up, must go down, plants need sun and water to grow, and hit most things hard enough and they break. The rules of the physical world are immutable.
There are no rules for how the digital world presented behind a screen must act. You can make a box appear out of nowhere and disappear just as fast. Items can float up, down, left, and right for no reason at all. But, you must be mindful that our roots in the physical world will have a feeling of awkwardness as their brains say "that's not how the world works." With prolonged use, our brains can be retrained that the digital world is different from the real world, but is that the sort of training you want a user to go through?
Hashtags (#) - some people love them, some people hate them, and Jimmy Fallon satires them
. Some see hashtags as slang, and over time they have developed a secondary function on certain networks such as Twitter, but their main purpose universally across all social networks is to provide context and categories.
The hashtag symbol is a way to denote metadata. It is a way to describe the text you have provided. Originally proposed as a means to easily parse/search through tweets, the concept caught on due to it's immense purpose. Hashtags are used to denote events, for example #earthquake was used in the 2011 east-coast earthquake, they are also to denote moods #happy or even to mark reference to a thing #iPhone5. Hashtags provide a very easy way for both computers and humans to search for content that is of interest. Since the # symbol is not common in every day language, it's use as a demarcation makes sense.
Whether you use them or not, understanding what they mean is useful as it can provide additional context. Take "I love Product X #sarcasm" and "I love Product X #biggestfan." While tone-of-voice can help determine sarcasm in person-to-person communication, text loses all that tone. A hashtag can provide context. Hashtags have made their way into blogs, news networks, and seem to pop up in every new social network - so for the time being they are here to stay.
As a programmer, knowledge of hashtags and the value they provide can really help you extract value out of social data.
Energy is always constant. We think of energy being used - the gas in a car, a device using batteries, your coffee maker consuming electricity, but that is only energy being transformed from one type to another. Your coffee maker is turning electrical energy into heat, your car is turning chemical potential energy into explosive pressure turning pistons and ultimately making the wheels move.
There is never loss in energy, although conversions are rarely perfect. For example, when your phone battery converts chemical potential energy into electrical energy, and the parts in your phone turn that electrical energy into light (your screen) or being consumed via processing, inefficiencies result in a small amount of energy being turned into heat. This is why your phone gets hot if you are on a long call, or use it alot.
Why is this important? Because our actions also follow these rules. Putting in only a little bit of effort cannot be expected to have extreme results. At least not without borrowing energy from somewhere else.
UI vs UX
UI (user interface) and UX (user experience) are common design terms and are sometimes used interchangeably. The reality is - they are two very different concepts with two very different purposes.
The UI is the way a user interfaces with a computer. UI can include a mouse and buttons that get clicked, text inputs where information is entered via a keyboard, or a microphone where the user speaks and the commands are parsed from voice. When you view a website and things fly in from all directions, and ask to be clicked, that is all user interface.
UX is one step beyond all that. If done correctly, the UI is born of the UX. The UX is about mapping the user's experience and desires. When a user signs in to Facebook, what do they really want to see? How do they want to see it? What information is most important, and how should it be displayed. Once those questions have been answered, only then can a truly effective UI be created.
This doesn't just apply to the digital world. Lets say you are in charge of your office's "What's going on" board. You could simply put up a cork board and let people put up fliers wherever, or you could give guidance and put up some dates, so that things get posted in chronological order. Or, have things geared towards kids at the bottom (so kids can read them) and adults at the top. By giving visual prompts or proper signage, you greatly increase the value of the function as well as reduce the time spent figuring out what may be of interest.
Whenever there is an interaction, there is an experience. In our personal and professional lives we should all strive to create the best experiences possible for those around us. Life is too short not to.
The future lies somewhere between science fiction movies and the so-called realistic predictions being made today. Technology born from scientific breakthroughs often comes relatively quickly and far exceeds people's expectations. Imagine how the world changed for people who first witnessed a radio transmission - being able to transmit a message without wires over a large distance near immediately. The predictions on how such technology will bring on the demise of society or utopia are also never really true.
Technology may change how humans interact and live, but it doesn't change the fact that we are humans. The most important thing we can do to prepare for the future is to ensure we embrace our fellow humans with love. Nuclear power - when used peacefully - creates an abundance of low-cost energy. When embraced with hate, creates destructive bombs that level cities.
The first installment of science Mondays is about physics - but don't worry, there's some real world applications!
Understanding how the world works allows you to solve simple and complex problems. Everything in the physical world is governed by the laws of physics, and if you understand why something is a problem, you can easily determine a solution.
Physics is the study of forces.
There are a wide range of forces
, but the ones that will help you solve the most issues are as follows:
We are all familiar with gravity as that thing that pulls us towards the earth. What's most important is to remember that gravity is an attractive force between two objects with mass (stuff). The more mass you have, the more pull that is exerted. The Earth pulls the Moon, and the Moon pulls the Earth (although with a much lesser force).
Friction is the force applied to an object by interacting with another object. A smooth floor provides little friction for a marble rolling along, whereas a carpet provides a high level of friction. It is friction that keeps a nail in place (the pressure of the wood adds to the friction, but, the pressure doesn't actually hold the nail in place.
Any object with a magnetic charge will react to any other object with a magnetic charge. Magnetic charges are caused by the alignment of the atoms in an element and the ability for electrons to move around that object. Electrons are negatively charged, and if they favor one side of an object, that side will be negatively charged, leaving the other side positively charged. The reason a refrigerator magnet sticks to your refrigerator is that the electrons in the metal of your refrigerator are "loose." When the magnet comes close, the electrons on the surface see the force and say "Hmm, that's a strong force, I'm going to come closer to it." The clustering of electrons because of that temporarily turn that section of the fridge into an oppositely aligned magnet, causing the magnet and refrigerator to stick together.
This is very similar to the magnetic force, except it is created by the movement of electricity. When you run current through a wire, a field of force is created around that wire. If you coil that wire up, that field can be significant (how electromagnets are created). The effects of electrostatic forces are only present when electricity is running through the object.
A normal force is any force that is applied by another object. So, when you hit a billiards ball with the cue ball, it is normal force that is being applied from the stick to the cue, and the cue to the other ball.
Science is lazy
All of science, all objects in the physical universe want to be at their lowest states of energy. In physics, work = force * distance. Everything wants to do as little work as possible. That's why everything on earth stays on earth - it requires lots of energy to overcome gravity. What makes organic life interesting is it's ability to adapt to these rules to ensure survival. Plants will grow towards the sun, but they will find the path of least resistance (a wall or something else to wind around). To do the least amount of work, nature will either minimize the force, the distance, or both.
Numbers don’t lie
Numbers don't lie, but that doesn't mean that they tell the whole truth. The world around us is governed by data and our analysis of it. Nearly every decision we make is based on data. Sometimes that data is from a pure source - first hand observations, or a highly trusted source. Other times, that data is provided by less-than-reliable sources, made worse when it is repeated without verification.
Ultimately there are two different types of data fraud you need to be careful of.
1) Incorrect data
It is often that a news outlet or source will simply fail to fact check. The same can happen with an internal system, or work-related inquiry. The first time it is said (especially if the source is untrustworthy) it is often ignored. But all it takes is one listener to repeat the incorrect statement, and soon it gets repeated again and again until someone reputable says it. If something sounds unbelievable (or too easy) question it's sources and do your homework.
2) Correct data, Skewed analysis
This is the worst, as the data is correct, but it's analysis is either misleading or flat-out incorrect. For example, if you had a high-school class of 20 students, 10 female, 10 male, and a teacher said "50% of the class failed." To later read in the school newspaper that 5 females failed the test would be a very bad assumption based off real data (10 females in the class, 50% of the total class failed...). What is most harmful about this is that bad analysis from good data turns into fuel for other people's "good data source" which can lead to even further bad data analysis.
What can we do?
1) Question sources
A reputable news source that is reporting statistics should cite their sources. If sources aren't cited, simply assume they are made up - better not knowing a good stat, that knowing a bad one. If there are sources, feel free to check them out. Additionally, if only analysis is provided, especially derivative analysis, go and find the source data. Analysis is guesswork. It can be good guesswork, but knowing the underlying data is what is important.
2) Point people to sources instead of repeating data
When talking about stats, cite your sources. Or, if you're recalling something from memory, say: "There was a study done that talked about this data. I can't recall the exact numbers, but here is where you can find it."
3) Analysis is Opinion - let people know
When presenting analysis, make sure you let people know you're opinion. "A new study on children's reading habits showed that much more girls were reading than young boys. My opinion is that ...." The data showed two numbers - but didn't explain why, why is not a fact, it's an opinion (until tested and proven as a fact).
4) Periodically question yourself
Remember that fact you learned when you were 5, that when you repeated made everyone remark how smart you were? I bet you've repeated it again since then. Unless it was a fixed-point fact (George Washington's white horse was white) chances are it is out-of date. For example, years ago I learned that 51% of the population is women. At the time (maybe the 1990s) that was correct. Is it still correct? Turns out, no, it's not. According to Wikipedia (http://en.wikipedia.org/wiki/World_population) the population is near 50/50 (101 males for every 1 female). Now, such a small change will probably not cause me to make a catastrophic decision failure, but take for example cellphone ownership. Even if the statistic I know is from 2011, it's old, and very inaccurate.
Whenever you have to make a decision that relies on data, take the time to verify that data.
Slow it Down
When learning something new - a sport, a skill, a programming language, or a spoken language - start as slow as you possibly can.
I've previously noted that you should just jump in
when learning something - and that is a great way to get started, but once you are started, go through the motions as slowly as possible. If you feel like things are moving too fast, slow them down and take your time to understand what it is you are doing.
When doing things quickly, mistakes can happen. I can be hard to differentiate between mistakes from lack of knowledge and mistakes simply from moving too fast.
Knowledge of science makes you a better person. Understanding how things work enables you to make the best decisions. Physics can help you be a better athlete, biology and chemistry can help you be healthier.
Knowing the rules that govern nature can help you to solve problems. Patterns in nature repeat themselves - even in the social interactions of humans.
Because of this, I'm going to have a mini-science lesson once a week. Inspired by the reboot of Cosmos, every Monday will be science Monday where I'll explain one physics, biology, chemistry or general science law/concept and explain how it's knowledge can help you in your every day. If you have any suggestions or recommendations for first topic, let me know.
If you haven't already heard, a very large security issue was discovered in the past few days and it's been named Heartbleed
. I'll spare the technical details, but, what it allows someone to do is to access data that is in a server's memory. The worst part of all is that, while we know how many major websites were affected by this, we have no idea how many hacks there have been. It could be that this issue was found out before any data was stolen, or it could mean that a few hackers/governments now have all your passwords to major sites (and possibly credit card info).
Should you freak out? What should you do?
Don't freak out.
The only thing you should really do (and you should be doing this anyway) is reviewing your credit card once or twice a month to ensure all the charges on it are yours. This is a good idea anyway. Most credit cards handle fraud very quickly and easily and let you get a new card number quickly if something does happen (along with refunding the charge).
What is affected.
The number of affected sites is unknown, but, the majors are Facebook, Instagram, Pinterest, Tumblr, and Google, Yahoo, Amazon, and Dropbox.
What should you do?
Based off the type of data that could have been stolen, the best thing you can do if you wish to maximize your protection is to simply change your password (I would change it next week, to ensure all these sites have updated and patched for the fix).
I'm curious - what was the actual issue?
To put it in non-computer terms, imagine that a website has a large guest log, like a hotel (servers actually do). Now, In this guest log, you have to verify that you are who you say you are to access the hotel. When you come in, you give your name, your address, and your personal information to confirm your identity. In the future, if you want to back, you can simply say hello to the guard, and the guard will say hello back. Now, in this case, the security guard would normally use their hands to cover up the other guests information (as you shouldn't be seeing other people's information). What this bug did, was allow you to essentially move the security guards hands so that you could see a few more rows in the guest log.
Now, this guest log contains much more than just log in information, it contains requests for pages, encryption keys, etc. But, it is all sensitive information in some fashion. Put in a visual form: http://xkcd.com/1354/
Computers are efficient because they never stop to ask why. They look at their next instruction and simply run it. If something fails miserably, then it stops, but otherwise it moves on to it's next task not worrying about the tasks ahead or behind.
While I never recommend that level of efficiency for us humans - asking why is one of the things that makes us human - but there is something we can learn from simply getting things done. I've talked about making a task list, but, order your task list once, and when one task is done, start the next one. Sometimes doing something in a less-than-efficient manner is actually more efficient than questioning every action you're about to take.
Additionally - once you get in the habit of constantly being in motion, things become easier, resistance gets removed.
The same goes for learning, especially technical things. "I don't know where to start" is a great demotivator - so simply start anywhere. If it's the wrong place to start, at least you learned something, and when you do find the right place, you'll have something covered.
Agile or Overhaul?
Many development shops today use a methodology called Agile programming. It breaks the traditional release cycle and allows you to put out small updates on a daily or weekly schedule, as opposed to bigger releases every few months. This has many benefits, such as making it easier for users to transition (lots of small change is easier than big change all at once), and it allows you to get user feedback and address user issues quickly.
The downside is that you ultimately become stuck to the foundation that you built. Take a house - if your purpose is to raise a family of 4, a 3-bedroom should be more than enough. You can continuously make improvements, redo the bathroom, change the kitchen, but if you suddenly decide to let the inlaws live with you, major work will need to be done on the house. That major work cannot really be done in tiny chunks.
Ultimately, any tech company needs to find a balance - release a product and iterate, iterate, iterate while also working on building the next foundation.
The same goes for business processes. You should continually tweak, but, if your task, team, or situation has changed, you may need to do a complete overhaul.
Learning can be hard. Especially when concepts are new and different from your current knowledge base. Constant attempts to do something that result in failure ultimately lead to frustration. Once frustrated, your tolerance for failure is reduced. You can see how this can spiral.
At the first sign of frustration you need to do one of two things:
1) Walk away. Come back to it later when you're in a better mindset.
2) Ask for help. Ask anyone, but reach out.
I never understood why school stressed that we needed to work alone as individuals. The reality is, many students asked for help with their assignments, and, while they may have written essays by themselves, had others help them edit, revise, and think through their topics. We learn best collaboratively.
Life is too short to be frustrated - avoid it.
The fast-pace of modern life puts pressure on us to remember more and more. The more of our brain we devote to remembering short-term lists such as appointments, grocery lists, etc, the less time we have to be creative and do critical thinking. Make use of short-term lists and reminders. Most phones have built-in reminders that work on a time or location based. You can be reminded to pick up milk when you drive near the grocery store, or simply to take the laundry out of the dryer 1 hour from now.
Save yourself by making good use of reminders.
You may have heard of the Oculus Rift recently. Most likely because it was acquired by Facebook for $2B. But what exactly is Oculus Rift and why does facebook want it?
Oculus Rift is a wearable set of virtual reality goggles. Not only do they display a 3d image for the user (two unique images, or for each eye, in a way to feel 3d), but they also track movement, so when you turn your head left, the view moves to the left. So, unlike 3d glasses that let you watch a movie in 3d, these also let you directly interact with this 3d world.
If you want to see a 90 year old using them and being amazed, check out this video: https://www.youtube.com/watch?v=pAC5SeNH8jw
Ultimately Oculus Rift was built for gaming, and it's focus has been gaming. The reality is, such immersion and quality virtual reality extends way beyond video games.
While I cannot comment on why Facebook bought Oculus Rift (because I am not facebook and cannot speak for their intentions) I can tell you some of the things that I see virtual reality enabling.
1) Freedom from the screen - All our devices are limited in size. Sure, we can have big-screen monitors, but they have edges and limitations. With VR, it will be possible to allow the screen to engulf the entire world around you.
2) Deeper social connections - ever since science fiction brought us the holodec (a holographic projector) we have been waiting for scientists to create one. Virtual Reality could actually provide something that is one-step ahead. A camera could digitize a likeness of yourself and allow you to interact in a 3d world with the digital likeness of other people. No longer is a conference call limited to the blurry image from someone's webcam. Many people can now sit in a virtual room, share a virtual whiteboard, and interact.
3) Immersion - The connections we make with the software we're using has become very superficial. Software has gotten easier to use, and the number of distractions and cat videos has increased. Virtual Reality offers the ability to create a higher level of engagement that happens with your whole body, and not just your fingers and your eyes. A more engaged user is a more valuable user.
Have a great weekend.
Stand up for yourself and others. Never be ashamed of your feelings - if you feel them they are real.
While this isn't particularly tech related, I mention it because cyber-bullying is rampant and the internet can be a dismal place if you look in the wrong corners (or in the comments thread in youtube).
The good news is that there is hope. Just stand up for yourself and others. Be confident in who you are and what you want to do, and don't let others put anyone down for being who they are.
"But don't feed the trolls" they say. You can respond without feeding the trolls - it is a simple: "That's inappropriate and not appreciated." A simple statement that states facts and ends the conversation. It is also gentle enough that you can say it to a friend at a party who speaks out of turn, or a random stranger on the net who is spewing hate speech. It also isn't an attack. When you fight fire with fire all you breed is destruction.
It also applies to ageism, sexism, racism, or even uncomfortable workplace teasing. You can even shorten it, "That wasn't appreciated." Get comfortable saying it. Say it often. Say it for your friends when they aren't comfortable to speak for themselves. Say it for anonymous people on the net who are too scared to comment back.
Finally - don't be your own worst enemy. If you find yourself saying or thinking negative about yourself - tell yourself "That's inappropriate and not appreciated." A positive attitude will help you learn, will help you adapt, will help you smile, and will help you enjoy life. You must be your own advocate.
Have a wonderful day.
There are some basic laws of science that, with their understanding, open up a wide range of possibilities. F=ma (force = mass * acceleration) for example. The bigger the object, or faster it is moving, means that more force is applied. Also: W = Fd (Work = force * distance). Basically, it says that climbing a 10 foot ladder uses the same total work as walking up a 10 foot staircase, or slowly ascending a ramp that is 10 feet tall at it's end. Clearly the ladder is the quickest way, but it requires more effort with each step.
Knowing the basics will not qualify you to be a rocket scientist, or professor but it will allow you to have a better understanding of the world around you. You can solve problems quicker, easier, and more efficiently by doing the same amount of work while minimizing your effort.
The same goes for technology. Understanding the basics of how your wifi works, or how your computer processor seems to do 1,000,000 things at once, yet in actuality is only doing 1-4 things at once (and why it seems that sometimes it's not doing anything at all!) can help you to be more patient and to avoid situations that might crash your computer.
Learning just a little can go a long way.
Science, as well as technology, is built upon many different types of learning. One being a slow, calculated attempt to push a known concept to it's limits. This requires an intricate knowledge of how things work. The second is a playful curiosity. It often happens when you have knowledge gaps, and is how children learn. "I don't know much about X or Y, but lets see what happens when I push them both off the table."
For many reasons, we fear the unknown - what if things explode? Thankfully with programming and technology, the chance of things exploding (or breaking beyond repair) is extremely small, and you can always re-install if it's purely software. So, if you're just learning, or looking to expand deeper into a concept, just play. Try something crazy, do something simply for the sake of seeing what will happen. Remember that failures are just excellent learning moments.
What you see…
Since the rise of desktop computing, there has been a great deal of software labeled WYSIWYG (Wizzy-wig - What You See Is What You Get). For example, Microsoft Word. When you typed was exactly what you saw on a printed page. This is great when dealing with a static medium (a printed page, a video that will be put on a DVD) but when you're dealing with software (and yes, ebooks are software) WYSIWYG can actually be a terrible misnomer and create headaches.
With technology, there is always a trade off between control and ease. If something is to be made very easy (such as creating a 1-page document in Word) you're sacrificing control over what you can do with that document, as well as how portable it is. This is where learning how to program, such as HTML & CSS can be very useful.
As with anything, it is important to know what your desired outcome is and to use the tool that is best for the job. Hand-coding a simple document in LaTeX that you only intend to print out is unnecessary, but writing a science textbook in Word that you plan to distribute an ebook is a terrible idea.
Take your time
There are certainly situations that call for work to be done quickly - life-or-death medical emergencies, fighting an actual fire, running away from a bear, but the rest of life can only create pseudo-emergencies.
Pressures are put on us from all directions, internal and external. Often times, taking a little bit of extra time to do a job well, or even to just do it slowly so you can catch mistakes while you're doing it, will pay off in the long run. Short term gains often come with long term risks.
The next time you feel stressed over a deadline - ask yourself how real that deadline is, and what the expectations are. Remember that doing it right the first time is the best thing you can do.
With the latest merger between Comcast and Time Warner Cable, as well as some moves taken by cell phone providers, there has been a great deal of discussion around Net Neutrality. While I have my opinions, I'll try to be as factual and concise as possible and explain a bit of what Net Neutrality is and what businesses are attempting to do.
For the sake of explanation, lets think of the physical wiring of the internet as roads - it is ultimately infrastructure. Large internet providers own cables that send data from our computers and devices to and from servers. So, like a family vacation, if we want to get from our home to some destination, we have to take roads. The internet is the same.
A few years back, the largest internet companies - Google, Verizon, etc, got together and agreed that they were not going to restrict traffic flow. In short, they agreed that if you have a car, you can drive on the roads. If there is heavy traffic, things will slow, and if you have an open road, you can drive fast. It is a bit more complicated than that, but I on a general scale, that covers it.
Just recently the US Government warranted that these large companies did not have the power to create/enforce such an agreement - mainly because the action was considered collusion. Despite the agreement being beneficial for consumers, the logic is sound. The US Government resolved that only the FCC could make such rules/restrictions about internet traffic/use. Since that ruling, no laws have been put in place to enforce any sort of neutrality.
Since then, a few telecom companies have taken steps that have had the Net Neutrality community upset. The proposal was that the cell phone company would allow a business to pay for an individual's wireless usage. Going back to the real-world car example, that is like saying if you drive a Honda, you can gas up for free, but not Fords. The telecom companies are the ones who control who gets free gas, so you can see that this would make Honda a more favorable car. Many argue that it gives an unfair advantage to large companies, who can afford to do such large-scale deals.
And - since I mentioned it above, the merger between TWC and Comcast is of concern to people because it merges two very large providers into one. Incentive for that newer company to increase speeds, reduce price, and provide better service is reduced. Reality is, there is no immediate threat to Net Neutrality by this merger, just many people concerned of poor service.
Create Your Future
You have the power to shape the world around you. Even with a basic knowledge of modern technology, you can shape the world around you. You can mix ingredients to create wonderful tasting food, you can craft a message and share it with the entire world, you can reduce your dependency on fossil fuels, you can even save lives. But, we can make change beyond simply creating. With every dollar we spend, we are helping to shape the future. When we buy sustainable foods, we promote sustainable foods. If you buy cigarettes, you promote the cigarette companies, when you buy local, you support local, etc. Every dollar you spend is a vote for the future that comes with its production and creation. Remember - you have the power to shape the future, use it wisely.
Define Failure & Success
The latest business craze is to adopt the methodology of "fail often, fail quick" which is about trying a bunch of different things, taking many small, mitigated risks, and when one starts to succeed, run with it. There are a few more rules, mainly around learning from your failures, but that is the main gist of the methodology.
For it to work, you need to clearly define failure and success. Without those definitions, you are most certainly going to fail in the end, or miss out on significant opportunities.
A definition of failure should have a clear when, and how. If you sell products, a failure definition like "Sells less than 100 units in 3 months" is great. Additionally, it is important to define a success. A success is not always a non-failure. In the product example, selling 101 units doesn't make a product a success, it may take 300 units in 3 months to be profitable. So what do you do in the grey area of 100-300 sales? You have to ask yourself - can I do something to make this product sell more? Can I raise the price to make more money yet not drop sales?
The same goes for technology. If you're building something new, you have to be clear with your goals, what is your start and end, what is your success, and what is your fail point. The worst thing is admitting defeat when your first snag is hit because you haven't properly defined a fail point.
When it does, it is a good idea to go into crisis mode, or as I call it, firefighting mode. Identify the cause of the crisis and the best possible solution to make the crisis go away. While in crisis mode, it's OK to ditch your normal routine and break a few rules. Normally check your e-mail every 30-minutes and always respond? In crisis mode, it is completely OK to ignore email for an entire day while you solve your problem.
Many people think the difficult hurdle when in crisis mode is identifying a good solution and getting it done well, but there is actually a second hurdle - identifying when the crisis is complete and transitioning back into normalcy. Let's say you spent 2 days solving a crisis, now you have 2 days of normal work to catch up on as well as whatever work comes in at it's normal pace - many people view this as a second crisis, and yet again go into crisis mode. This loop turns people into perpetual firefighters and is rarely productive.
Once a crisis is over, take the time to recognize it's resolution and then go back to your normal routine. At first, things may take a little bit longer than normal, but it is OK to leave a little bit of work for the next day. Your routine and system should afford you a bit of relax time, and room for floods of work, so a loss of 2 days should only take 2-3 days to be fully caught up.
Lately there has been alot of talk of Bitcoin in the news (driven by the shutdown of the drug-selling site Silk Road, and now the shuttering of Mt. Gox). But for most, Bitcoin - and cryptocurrency - is really just some cyber mumbo-jumbo. The ultimate question is - how does this actually matter?
First, we must understand what Bitcoin is. Bitcoin is a type of cryptocurrency
. I'll spare the nitty gritty of how it works, but the short explanation is that each piece of currency is ultimately a unique set of letters and numbers. Similar to the serial number on your paper money. This unique number is validated by a huge amount of people who (in exchange for a small amount of bitcoins) run servers to check and validate the ownership and transfer.
Head spinning? Try this example. Lets say we get 10 people in a room and make up our own money system. The computer spits out a number and tells me that I have $1 and the ID is 1A. I tell everyone: "I have 1A." Everyone nods in agreement. Later, if I want to buy something from someone else, I simply shout "I'm giving 1A to Bob." Everyone nods. Because multiple people listen, as long as a majority agree that I have 1A (and soon Bob will) the transfer can go through. So, the system works on redundancy and agreement.
There is no agency that controls the flow of cryptocurrency, and it's supply grows at a set rate, which controls the supply from getting out of control.
But do you have to care?
No - not yet at least. For now, the best way to view bitcoin and any other cryptocurrency is as a risky investment. Lots of money can be made, and if you want to set up your machine to be a validation node, you can even earn a few bitcoins here and there, but there are major risks involved, and like all risky investments, you should really understand it before jumping in.
The future is unclear though. Since cryptocurrency has no government backing, it is protected from government defaults and fluctuations. At some point, it is reasonable to consider that a cryptocurrency will be on the same standing as the US dollar, the Euro, the British Pound, etc, but it is unlikely that it will replace those currencies - at least not until there is a global government (should such a thing ever happen).
By now, the butterfly effect is a seemingly ubiquitous concept that is often used in extremes - either every action has huge repercussions, or it is considered extreme hyperbole. For those unfamiliar, the butterfly effect is a concept stating that a butterfly flapping its wings in Japan can cause a tsunami in California through a chain of events - butterfly flaps its wings, pushing air, which makes a tiny wave, which picks up more energy and travels the ocean.
The concept is actually not insane, but it fails to take into account that like much of physics, the worlds obeys the physical properties of waves - which is that things can be additive, or simply cancel each other out.
Noise canceling headphones work in two fashions - one simply create a reasonable seal and attempt to block outside noise - as most construction noise-guards work. But, the more expensive powered noise-canceling headphones work by using a microphone on the outside of the headset and creating an opposite wave through the speakers. So, it is actually canceling the noise by creating more noise!
I'm sure you've witnessed this in the workplace, two people who are on a team, and both clearly doing work, yet there never seems to be a final result. One person seems to cancel out any positive gains the other is doing. When two people are in sync, you can get the opposite effect - they manage to amplify each other creating greater synergy.
The only way to achieve this level of synergy is to be predictable, be open with your direction, and be aware of the waves of others. A splash is chaotic, chances are anything you do right after a big event will get drowned out, and will rarely change the effects of the splash, but, as with water, things quickly resume to a normal level at which point you can ride the wave if things are positive, or create a counter-wave if things are negative.
When you have your balance, it is hard to get knocked over. When you are off balance, it is easy to fall. As you fall, instinct tells you to grab on to whatever you can to stabilize. This is the crux of fear-based marketing.
I realize this is not exactly a post about technology, but I thought it was relevant. If you ever find yourself afraid or worried - if you read something or interact with software that makes you uncomfortable or scared - stop. Take a breath and do your research. Most viruses work by playing your fears. They show you a popup telling you that you have a virus (which you don't) and that you will lose everything, but if you install this anti-virus, the virus will go away. The anti-virus you end up downloading is the virus itself. Because you want to rid yourself of the original "virus" you end up agreeing to install and give control of your device to this "anti-virus." Once installed, you're done for.
The same works in product marketing. A company tells you your child will be harmed if they use a specific type of spoon. A comedian once quipped that he was going to sell a cereal that featured on it's box "Arsenic Free." just to make you think the other cereals had arsenic in them. Not to say threats aren't real, but you should always do your research, you should always verify facts - especially when provided in an advertisement.
While others can influence your emotions, they are yours, and you shouldn't let others control them. You always have the power to stop, relax, take a breath and re-balance yourself.
Language was developed as a means for species to effectively translate important messages. The most memorable of messages is one delivered in a story. From the simplest - "Bear large, run from bear. Boar small, hit with pointy stick, feast," to the most complex, what makes them truly memorable is that they are part of a story.
In whatever you do, ask yourself, what is the narrative? How can you connect the dots? If you're trying to convey a new idea, explain it from the point of view of the user - what is the user's problem, what is their mood -- what is their story.
One of the reasons social media has exploded is that it lets us tell stories. Facebook even changed their "wall" to be a timeline - a series of events. While our daily lives may not be as interesting as those in fiction novels, we are invested in the lives of our friends and family, and can't wait to turn the page to see what happens next.
This can apply to any job, any technology, any situation. Have a story to tell.
The average human walks a distance of nearly 100,000 miles during their lifetime. If taken all in one direction that would get you around the entire world 5 times. If you walk aimlessly, chances are you will end up not far from where you started.
The same is true of any goal. It is achievable if you are willing to take the necessary steps. For some, a goal may require more steps, but rarely is it unobtainable. Unreasonable - maybe, impossible, rarely.
If you always have a goal, and are always taking steps towards it, you will achieve it.
Screws and Nails
The difference between learning, knowledge, and experience is understanding the nuances of efficiency and being able to identify what the right tools for the job are.
What is important to understand is that when learning, it doesn't matter if you pick the perfect tool, just that the result is correct - experience will teach you what is best.
An example to demonstrate this point is the difference of using screws or nails as part of construction. If you want to join two pieces of wood, you can use either of these methods - and for someone just learning, using a nail or a screw will make little or no difference. As you become more experienced, you'll begin to understand that screws cost more, take longer, and require a power-screwdriver to insert efficiently, but they provide a stronger bond and give support in more directions, whereas a nail is cheaper, faster to install and only requires a hammer.
What are your tech goals for 2014? What do you want to learn? What would you like to improve? How can I help you get there?
Whatever you do, be awesome. If you play a game, make sure that you and the people you are playing with have the best time ever - remember, it's just a game. If you're creating something new, give it personality, make the user smile. If you're helping someone out, take the time to understand their problem and steer them down the path to success.
Your actions have ripples. Negative actions will affect people in a negative way - increasing the chances they will pass along that negativity. Positive actions will make others happy, and increase the chances they will do the same. Being awesome can sometimes shake people of their normal movements and inspire them to be awesome as well.
Remember, be awesome:
When attempting anything considered difficult, long, or simply very different from your norm, the question of where to begin is an important one.
When faced with this situation, the solution is to start here and start now. Now that you're at the start line, the question comes - what is your first step? The first step for any long journey should be a book. Get a book on the subject. Learn from an expert. Read about their trials and tribulations, how they failed and what they've learned. Not sure what book to read? Go to your local library and ask the librarian, they will point you in the right direction.
Even if you end up taking a few steps in the wrong direction, you will have learned something, and by knowing you're going in the wrong direction, that means you know which direction is correct.
Hard to Find
Most problems have a simple solution, but that simple solution can be hard to find. Unless something is critical, if you cannot find a simple solution for it, you should do more research and possibly revisit it in the future.
Solving a problem with a complex solution makes it more costly to maintain in the future, as well as increasing the upfront time cost in creating the actual solution.
To give a technical example, if you're trying to make your website mobile-friendly but the layout and code is designed for a desktop, there are many possible ways to do this. You could start over using a grid-based layout using something like Bootstrap, or you could clean up the structure of your site and use media queries to display things for each device size. All of those options require you rebuild from scratch - which, if you have the time and resources are a good idea, but you may not always. By going down either of those routes, especially without good knowledge of media queries or bootstrap, you could be going down a rabbit hole (although one in which you will come out smarter).
Remember, if none of your options seem viable given your time frame it may be best to table it, think on it a bit, and revisit later.
When you are in your own head, you can never get a complete picture of the world. Your field of vision is limited, and if you try to spin around to get a 360 picture, everything is a blur. Even then, you can only see what is right in front of you - only a small picture of the entire world.
To see things clearly you need to step out of yourself and look at things completely objectively. Get rid of the subjective why, and stick to what, when, and who.
With technical problems, we can often get caught up in the details. A bug can leave us hyper-focused on solving that issue without stepping back and looking at the big picture with clarity - what is the interaction we really want the user to be having. Not only will new solutions open up, but the result will be a better experience for the user.
The Right Answer
You do not need to know have all the right answers, you just need to know where to find them.
Very few questions or problems require an immediate answer, which leaves open the possibility of saying "I'll get back to you."
Knowing how to find the right answer isn't as simple as Google.
While some facts are pretty commonplace, and a wikipedia or Google search will return the answer, complex questions require knowing what to search for, how to weed through advertisements, and how to evaluate options. For important questions, keep asking yourself, "is there more information I can get?"
While your tooth brushing habits may be relevant information for your doctor to have, I doubt your neighbor has any use for that information. In applications, as well as in life, it is important to think about both when and where data will be useful. If a piece of data is temporary - useful at this moment, but no value later on - it should be set in a way that it is forgotten later.
This will help increase performance, reduce confusion, and create better communication - in both life and programming.
Take Something Apart
My great uncle had a saying, "Did God make this? No. A person did, so a person can fix it."
This may have been easier to say back when things like toasters or cars were much more friendly to repair, but the concept still remains true. While much of hardware is ultimately created by robots (I don't suggest attempting to take apart your computer's processor in attempts to fix anything), software is still written by humans, therefore it can be useful.
The Same, But Completely Different
Whenever we are faced with something completely new, we try to treat it in terms of something we already know. This is an important fact for two reasons. One, it helps you to recognize how you attempt to learn new things and can help give you perspective when things don't work as you expect. The second is that when designing or creating for a new device or platform, your users will treat it (at first) like it is a different version of what they already know.
Take smartphones as an example. In the beginning people treated them as small computers. We took the desktop version of software and websites, and did our best to strip features and make things smaller so that they would fit. Even now, many mobile sites are really just dumbed-down versions of the desktop website. This is an issue for a few reasons. The first is that the user doesn't want a lesser experience simply because they are on a smaller device, and the second is that smartphones and desktop are very different devices.
Smartphones are touch devices, desktops (for the most part) are not.
Smartphones have an accelerator, GPS, and a camera. Most desktops have neither (although many have a camera).
In fact, smartphones and desktops are completely different things. They are as different as a motorcycle and a car. A motorcycle and a car both drive on roads, and consume gasoline, but to think of a motorcycle as a limited car would be doing a disservice to the motorcycle.
Boil It Down
Many of the problems we face are very specific, which can make it difficult to find someone else with exactly the same problem and a solution to it. Even worse - if you fail to find an existing solution and have to create your own, if it is too specific, it will not be very useful in the future.
Here are a few keys to boiling things down:
- Make your problem as generic as possible (but still accurately describes your problem).
- Focus on acceptable outcomes
- Focus on the generic false positives (negative consequences of your existing solution)
Share your goals
One of the most important factors in being both successful and happy is having and sharing goals.
By simply writing your goals down, you are more likely to be successful. One study even suggests that you are 33% more likely to achieve your goals if you write them down, share them with others, and remind yourself of your goals on a weekly basis.
If you don't have any goals for 2014 - now is a great time to make them. If you do have goals, find a friend to share them with (or share them with me by replying to this e-mail).
In attempts to improve my success rate, here are some of my 2014 goals:
- Always make family time
- Create less content - create higher quality content
- Finish Zen of Technology Book
- Publish Zen of Technology Book
- Finish Shared Epic #1
Find The Good First
Most of the time we have to learn new things, its because we want to, but sometimes we are less than willing. Work may require you know a piece of software, a programming language or framework that you are completely unfamiliar with. I'm often faced with the "should I adapt some new technology" question, and in the past I've approached it by asking if it really did the job better - often that was no. The reason I came to those conclusions is because I looked for the bad.
Every new thing has flaws. A saw is a wonderful tool for cutting, but terrible for writing messages. A serrated knife is better than a straight blade for certain cuts. Instead of finding all the things that this new thing doesn't have, focus on the things it does have and that it does well.
Most tools are built with a highly specific purpose in mind, and the secondary purposes are just bonus. Focus on that specific purpose and give it a try. Get used to using a tool where it does best, and it will become easier to handle when trying to deal with trickier situation.
Also - you can always use multiple tools at the same time to solve a problem.
We all have tasks that we have to do on a daily/weekly/monthly basis. The best way to ensure that these tasks get done and never forgotten, create a recurring calendar event and schedule when you are going to complete the task. Simply noting when the task is due does not ensure you will remember to do it before that time.
We all love things that are new and shiny. In time, things tarnish, get dusty, and generally lose their shine. But did we buy it for the shine or for the utility?
Businesses have trained us that it is easier to toss an old gadget and just buy a new shiny one, yet, with good care and a bit of elbow grease, you can transform old gadgets into something shiny again.
It also helps to remember what the utility is you get from something. Newer, better, faster is great, but only if it is newer, better, faster where you need it.
Don’t give up
Not every project can be a success. That doesn't mean you should simply give up on it and walk away. Doing so leaves a great deal of value unfinished and ultimately leaves us with a "fail" on our hands. As a project enters a stage of decline, allow yourself to re-align your goals and change your expectations.
For example, imagine that you wanted to build an online store to learn how to build websites. You download a bunch of pre-made code and put everything together and have a great idea as to how to do search/display results that is new and unique. You spend a few weekends working on it and get some of it working but realize you are in over your head on the custom search thing - your motivation starts to wane for the project.
At this point, you could simply declare it an experiment and walk away, or you could re-assess your mission. You could work on getting the simplest form of the site done - a simple site that displays some products and sells them. Or you could chop the project up into smaller pieces and use search/display as a learning experience then to find tutorials or a mentor who can help you with those parts.
Even if you manage to get the code complete and working, then give up the project and never market it, at least you have something complete that you can put on a resume. Even if your new potential job has nothing to do with coding, by showing that you have the ability to start and finish something, and overcome obstacles, you have a marketable skill.
Humans are hardwired to notice things that are different. The object in motion among the still plains, the dab of red in a field of blues, it is part of our survival. The same goes with social interactions.
I'm not suggesting you do something that is out-of-character, but you should be yourself as efficiently as possible. If you have a witty sense of humor, don't hold back on your jokes. If you like helping people, don't just ask if someone needs help, just start helping. Never censor yourself from doing something that might make someone smile or help.
I've always stuck out my entire life - for tons of different reasons. When I was younger, I tried too hard to stand out, simply to stand out, and in many cases it had the opposite effect than intended. The issue was motives. I was trying to stand out so I could get admiration and simply be noticed - not because I wanted to help or bring a smile.
How does this relate to tech?
Everything you make is an extension of yourself. While you are not responsible for the actions people take with the things you create, you are responsible for intentions and have the power to shape a tool's use. There are countless ways for people to spend their time, and if you want your product to stand out you need to make sure it helps or makes them smile. Chances are, the functionality is available elsewhere and the differentiating factor is you - and the aspects of your personality you wish to add in to your application.
It is impossible to be productive for your entire day. First off, you must sleep. But, even getting about 8 hours of sleep, you simply cannot be 100% productive the remaining 16 hours. The problem I see people often doing is stretching themselves thin. They believe they can work for 12-14 hours straight but end up getting into such a fatigue that their productivity is less than that of someone who simply worked 8 hours.
Our bodies and minds work best when they are in balance. To achieve balance, you need to sleep, eat, drink water, exercise your body, and exercise your mind. The same way your body gets fatigued after extended periods of exercise, so does your mind.
What is this post about? Oh yes - vices. I mention the above because there is something important to note. It is OK to be unproductive. If and only if that unproductive time is acting as a mental cool down for you.
This observation started for me when I worked for a large business and I noticed that employees that were smokers seemed to work better in the later hours (or put differently, they tended to remain productive into the late hours). Nicotine is a stimulant, but so is coffee, and those who drank coffee but did not smoke seemed not to fare as well. I decided to take "smoke breaks" with the smokers (I don't smoke). While doing nothing for 45 minutes a day would be frowned upon, going outside for a "smoke" was perfectly acceptable. On these smoke breaks, I chatted with the smokers, had a snack, and simply took my mind off work for a few minutes. The results - I found that I felt less mentally fatigued by the end of the day. Another odd by-product, if I was stuck on something, I could ask the smokers for help, and often they could help me work through the issue.
What spurred this post is that sometimes I feel guilty about doing an activity that is "non-productive" such as playing a video game, reading a tech-news website, or watching a funny video on the internet. The reality is, while that singular event is unproductive, it is giving my mind the rest it needs to run at full capacity when it needs to.
I am… (not)
A definition is hard to change. When you state something like "I am" you are making a promise and and expectation as to a list of skills. To state "I am a doctor" tells people you have a knowledge and skillset which could be very useful in certain situations.
Stating "I am" can be a wonderful thing (when it is true) but the worst thing you can do is state "I am not." That is a promise that you will never be something. While there are some cases, like if a person asks you "are you a doctor" where it is appropriate to say "I am not a doctor." The right way to look at things is "I have no interest in becoming a [something]." Or "I would like to become a [something]."
By saying something like "I am not a programmer" or "I am not good with technology" or even "I am not a cook" you are ensuring that you will never be. Learning any new skill or trade requires perseverance and attitude. If you believe you are not something, you have neither the attitude or the perseverance.
Alternatively, by recognizing you want to be better at something - "I want to become a cook," or even "I want to be better at cooking" you do not set expectation for skillset, but you give yourself the leeway to stretch your skillset and set yourself up for becoming.
It is never too late to redefine who you are - so stop saying "I am not" and start saying "I want to be a better..."
Everyone deserves a day off every now and again. Take it, and enjoy it.
Thank you to my mother, late father, sister, wife, relatives, friends and family who have supported me, taught me life's lessons and all out of the goodness of their hearts.
You are never alone - nor are you ever a one-person-show. You build upon the foundation that others have helped you build. Take the time to recognize this, both internally and externally. Say thank you, but also reflect on who you are and the skills you have. Realize that it took the knowledge of many others to help you develop the skills you have - and that you can help provide the foundations for others success.
Technology does not live in isolation, it builds upon the foundations of it's past. We can rapidly develop software only because high-level programming languages exist. They only exist because we had enough experience with lower-level programming languages to create abstractions. To develop something from complete scratch would be to ignore the contributions of all those that came before.
P.S. It doesn't hurt to say thank you to open-source projects you have made use of and share your success stories.
For most, a perfectly productive day involves knowing when your meetings are, knowing the problems you face and working through to find an answer. The reality is, not everything is inputs/outputs you can control. How can you deal with what you don't know or expect? The answer is event-based thinking.
Event-based programming or planning is not based off input, but a generic event. Dealing with events helps you take a possibly jarring event and turn it into something you can deal with regularly.
For example, you could have a process for dealing with critical events. Your plan for critical events might be:
- Determine the issue in as much detail as you can.
- Determine the timeframe for a solution.
- Define an acceptable solution.
- Identify the resources (people or money) necessary to solve the issue.
No matter what the issue is, the above will give you all the information you need to then find and implement a solution. Having plans for events lets you offload any worry about the unknown.
When it comes to content - and even services - being concise is king. Time is a resource that always seems in short supply, and competition gets fiercer and fiercer by the day for attention span. Everything you create for the purpose of consumption should be done with care, research, and consideration for use.
Before you hit send, before you add a post, before you do anything public - ask yourself - does this provide value. Does this present something new, and are my facts researched. If not, then use the discard button.
We live in the safest time in history
. It's true that every day in the news you hear a new story of some violent act or some major service that has been compromised and passwords have been leaked. While those events are real, when you consider the amount of people there are, and the watchful eye that the news is casting on every-day going-ons, it is a shock that there are not more events report.
My belief on the reason for this is because people feel that their basic needs are met, and when that is the case, (on average) people are good. But that doesn't mean that threats aren't real, and that they can't affect your life. There are a few basic principles that work both in real life, and when it comes to technology.
Have 3 levels of passwords.
Pick a short, simple password for things that you don't care about. Any account that doesn't store credit card information, or you don't care if it does get hacked, use your short simple password for this.
Pick a long, fairly complex password for things you care about, but aren't critical. For some, this may be your facebook or twitter account, or your work email, etc.
Third, pick a unique password for anything bank related. Credit card, bank account, etc. In the terrible case that one of these gets compromised, you want to only have to worry about that, not every account you use.
If you are not a fan of remembering more than one password, there are password managers
that have proven very secure.
Keep your personal information personal.
Despite all these crazy requests from companies that require you use special characters, capital letters, and no dictionary words in your password, the biggest threat is in social engineering. Most password resets for things like e-mail require your phone number (and access to your phone) or access to a few key pieces of information - mother's maiden name, full date of birth, favorite color, etc. While I'm not saying you should never discuss your family lineage at a dinner party, you shouldn't post it on your blog.
Be aware of your surroundings.
Sure, you know not to download random attachments from people you don't know (and be suspicious of ones from people you do know), but we've been trained very well to be weary. Even still, viruses get installed by thousands of users on a daily basis. Protection is about knowing what file extensions are videos/pictures and what are applications, what websites are safe to download from and which are not. But the same goes for the real world. Is there proper security at the entrance? Are they playing games on their phones or actively monitoring those coming and going? Are people acting suspiciously?
Awareness can both prevent and mitigate risk. Spotting a problem as soon as it happens (such as identity theft) can make for easy cleanup, but letting it go can result in irreparable damage. The key is being present and monitoring your surroundings.
Whether you'd like to think of it as repetition or reinforcement, we cannot fully grasp something until we do it over and over again. Simply reading something once, or giving it a try is rarely enough to let you be efficient. For this reason, I've made sure to keep a full archive of all the zen's at ZenOfTechnology.com and am working on an ebook which will be published before the end of the year.
We all use data to make decisions in one way or another, but when was the last time you built a data-driven decision tree? This is not only useful for difficult decisions, but even for smaller decisions. Building a data-driven decision tree is simple if you follow these steps. To make a universal example, I will describe the process of determining where to go for dinner.
1) Determine your critical data factors.What data elements will change your decision? With the dinner example data points may include price, proximity (drivable, walkable, within 20 minutes, etc), take-out or dine-in, kid friendly, food quality.
2) Determine your thresholds.Objectively determine your cutoff points for each data point. These are values where a boundary break causes a non option. To continue the example, your cutoff point may be $20/person, so any place that has an average price of $20/person or more becomes a non option.
3) Determine your route.
There are many ways you can traverse a decision tree. You can walk through all possible solutions, or you can choose to order your options in some logical fashion and choose the first full match. In the dinner example, you could walk down Main Street and eat at the first place that matches your criteria, or you could flip through your stash of menus pulling out those options that don't fit. Determine your route before you take it! An efficient route will yield an efficient (quick that matches your criteria) decision. If you start to flip through your options, then decide to drive around, and while driving remember that there are more places in the next town over, you may end up wasting a long time simply making your decision.
4) Let go of decision regret.
Create your criteria in a way that you will be happy with the outcome - no matter what. The goal in decision making is to find a solution that solves your problem - not always the best solution. If your goal is to find dinner for less than $10/person that is within walking distance, saving $0.50 by going to a pizza place instead of Chinese takeout should not matter in the grand scheme of things if both are less than $10/person. By freeing yourself from the constraint of finding the best option, you can focus on finding an acceptable solution quickly, executing, and then moving on to the next problem.
Being able to pivot
While data-driven-decision making may not seem that relevant when determining something like where to eat for dinner, it can highlight how a change in both assumptions and thresholds can change things. Imagine your rich aunt comes to town and she wants to take you out. She loves walking and doesn't care how much food costs, but hates seafood. If you already set up your decision tree, you could quickly change your assumptions, and even put in lower thresholds to filter out takeout and fast-food chains.
Trivial can add up
It may seem trivial, the amount of time saved by making data-driven-decisions on a small scale, but take a few days to be mindful of the amount of time spent determining what you will do for dinner. Even if you take 5 minutes every day, that is 35 minutes each week. Over 26 hours per year! If you came up with a process to make that decision in 1-2 minutes, you'd have an additional day each year! You could even craft an elaborate dinner decision tree including a ton of local restaurants all in an hour.
Decision trees can also be reused to make future decisions and referenced to defend a position in case if the outcome is less than desirable.
My son sat in his car seat while I was driving and pointed out the window and asked "what's that." By glancing in the rear view mirror, I realized he was pointing to the left, but a quick glance to my left didn't see anything out of the ordinary. It was at that moment, I had an epiphany (or deeper awakening if you will). Decision making is just like driving a car.
I was driving a car - my task was to ensure I didn't hit anyone, that no one hit me, and that I got to my destination. The information that I could perceive through the windshield, side-view mirrors, and rear-view mirror gave me enough information to achieve that goal - but it did not give me all the information.
The next ah-ha was the true importance of having multiple roles with multiple perspectives. If you have 3 drivers in the car, I can only imagine that would be a very bumpy ride. When you add a second person to a car - they become the navigator. They worry about directions, allowing the driver to focus even more on not hitting others, and not getting hit - synergy in delegation! Now, the navigator also does not have to pay attention to the road at all times, so they can turn their heads to look at blind spots, and keep there eyes out for subtle details, like a small street sign.
Adding another person, and you put a person in the back - with a completely new perspective. They don't have as good a vision of the front area, but they have more focused vision of the sides. Additionally, they have more mobility to look behind.
Where things intrigued me most, and lead me to write this post is because all of this relates to a huge reason why different people with different perspectives have such a difficult time getting along. We all believe we are making the best decisions
. And we are (well most of us) given the information we have. The navigator who is paying focused attention to road signs gets annoyed at the driver who missed their exit because they didn't see the sign (they were busy avoiding a bad driver and ultimately avoiding an accident). The knowledge that one person has is not the knowledge another has. Even worse - our knowledge bases are not all the same. Some people (such as those sitting in the back, or even the 3rd row of a larger car) have little knowledge of impending traffic, and therefore may be frustrated if the car is not going very fast.
This is beneficial to us in many ways. The first is, it helps us to deal with people we may be frustrated with easier. Maybe they acted the way they did because they weren't aware of some important detail. Can we educate them? Maybe they have some detail we do not have, and are actually frustrated with us for making a bad decision.
Even more powerful, if you assume that everyone who has a different opinion as yourself has some data piece that you do not have, you can question them and find out what that knowledge is. By gaining a more complete picture and getting more facts, you can make higher quality decisions.
Not to say that all disagreements are knowledge based. Some people make decisions without facts, and some people simply interpret facts differently. For example, studies may show that a room painted blue make you slightly happier, but if you're a person who loves green, you'll paint your room green.
The paradox of choice
states that giving people too much choice is actually a bad thing. Also known as "analysis paralysis" having too many options actually hinders our ability to make decisions. Take for example a simple question: "What do you want for dinner." Unless you have a burning desire, that question can be difficult to answer. But, by adding a constraint: "Would you like Pizza, Chinese, or Burgers for dinner," you get much quicker results.
The principal is often applied to business and user experience, but I've been practicing it for the past few years as a way to spur creativity. When attempting to be creative, you rarely have a clue as to what your final solution or product will look like, but you can use artificial constraints on your tools or methods. "What can I make in 15 minutes using only a blue pen?" "What gift can I give that utilizes a 3 or 4 section picture frame?"
Some examples of common constraints:
- Must build from scratch
- Must use a pre-built solution (if you can restrict things to specific retailers, even better)
- Must use a specific coding framework
- May not use a specific framework/software
- Must be less than a specific dollar amount
The key is to accept your constraints as hard constraints until you've hit a max. If you need, give yourself a short time constraint to think, this will reduce your time spent going down a potentially incorrect path if that is what you are worried about.
Depending on who you ask, being a "Jack-of-all-trades, Master-of-none," is either a compliment or an insult. The reality is - while being a master at a specific skill has wonderful short-term benefits, being a jack of all trades ensures success in the long run. This is true with all technology.
Being a top master of a skill takes tremendous focus. It ensures that you can demand high wages and have steady employment as long as that skill is in demand, but as history has shown, skills come in and out of demand.
One concern with being a master is the expert-trap. Another way of putting it is, "when the only tool you have is a hammer, everything looks like a nail." Because you have spent so much time honing one specific skill, every problem you face you try to solve with that skill, even if it is the wrong tool.
Being a jack-of-all-trades enables you to be more nimble and essentially makes you a master of learning new skills. It gives you the ability to look at a problem and determine what the right tool is for the job.
There are some examples where you need to be a master - doctors, scientists, etc. As for technologists, your best bet is to keep learning and become a jack-of-all-trades.
Sometimes we simply have to make do with the tools we have available to us. Either time or a complete lack of availability makes our existing tools unreachable. In my case, I needed to create an image quickly and didn't have my drawing tools nearby. I opened up Photoshop and drew some squiggly lines. From there, I applied filter after filter until I came up with the image above. What is it of? I'm not sure, but it was appealing to my eye - and it fit the theme - improv.
Often times we're forced to improv at times where time is limited - we do so out of complete necessity. Rarely do we have the time to find the learning moment in those cases. But, we can bolster our learning and freshen up our daily routine with weekly improv.
Once per week, take a process or task and improv your way through it. Force yourself to use a new set of tools - or restrict the use of one specific tool. Normally sketch things in Photoshop? Try pen and paper. Make your daily to-do list on paper? Try a whiteboard. Get creative and you will find that you learn something new and increase your skills at using those other tools.
Trying to accomplish anything of significance by yourself is a near impossibility. Having a partner has many benefits - it holds you accountable to someone else for your actions, provides you support when you need it, and helps to provide you with different perspective and insights to make your decision making stronger.
I've tried executing on a few ideas with myself as the sole creator or decision maker and most ended quickly and with little success. Whenever I've enlisted someone else (or been enlisted by another) to make a project work, it's chance of completion rose dramatically. Two people working closely together can accomplish what three would do individually. Why? Accountability and encouragement. We all have days when we don't want to get out of bed, or some distraction pulls us in. Having a partner gives you a reason to stay focused and helps encourage you when you need it most, turning a potentially unproductive day into one where work gets done.
Beyond just productivity, having a good partner in life is one of the most rewarding experiences. They can bring you up when you are down, stretch out a 30 second funny moment for years and still keep it funny, and be the support you need to remain healthy, happy, and productive. Today, I celebrate 5 wonderful years with my beautiful wife and I am so lucky to have her.
Life is not full of boolean decisions. Not everything is a yes-or-no situation. Life is complex, issues are complex, and there amount of grey area far surpasses the amount of black and white. Drawing a hard line with a decision does not allow you the flexibility to change your opinion when new facts become present or simply because your preferences change.
In all decisions we make - technological or not - allow yourself to respond in the grey area. Instead of just saying: "This is the only right option," try to say "This is an option that works, that I favor, but here are other options that could work." Give yourself and others a chance to evaluate the reasons for decision making.
Open Your Heart
Technology is just a fancy word for tools. Tools are created to serve a purpose - to solve a problem. To be the best technologists possible, you must open your heart and listen to others to determine the real problem and best solution.
We encounter people with problems big and small every day. Being a technologist makes you the most prepared person to solve any problems that come your way. With proper search skills, nearly all information is at your hands. Additionally, a technologists has the curiosity and know-how to build tools to solve problems that may seem to difficult to solve with existing tools.
To truly solve a problem, you must be quiet and actively listen to the person in need (even if that person is yourself). No matter how technical the problem sounds, you must open your heart and try to find out what the real problem that needs solving. When you rush, you end up treating the symptoms without actually solving a problem. Many tools we have today are solutions to symptoms or meant to fix the not-quite-complete output of an incomplete tool. These are results of a failure to properly listen and understand the needs of the user.
Another reason to open your heart is that it creates a connection. It enables natural follow-up, and allows the person(s) with the problems to provide feedback as well as input to create the best solution possible. Anyone can be a technologists, and by listening and actively making the user part of the solution, you are helping them to develop the mental tools needed to become a technologists themselves.
Be happy, listen, and be the best technologists you can be.
One of the key features of a programming language is the ability to express "IF some condition is met THEN do something OTHERWISE do something else." This is referred to as an IF statement or an IF-THEN-ELSE statement. While it is the cornerstone of programming, it also can be extremely helpful in many non-programming situations.
Most spreadsheet applications (Excel, Numbers, Google spreadsheets) allow you to use these if statements. The formulas vary slightly but are essentially:
=if("condition","do this if condition is met","do this if condition is not met)
I frequently use these IF statements to create complex sorting. Excel has good built-in filters, but often my data is raw or too specific and I want to add "fuzzy" filters (such as if data is less than something, or in a specific range, etc). It statements allow you to create additional fields for which to make the built-in filtering even more powerful.
Often times we are faced with opportunities that we decline simply because they don't fit into our current workflow. You've perfected your processes over the past few years - so anything that requires a change to those processes must not be that great. Sound logic, but not always true. Over time, you've honed your processes to the tools you have at hand. When new tools or opportunities present themselves, it is important to rethink your workflow given the new tools. While not every opportunity or new tool can have a net benefit, passing on a good opportunity can come at a severe cost.
Take a few minutes to build a new process - from scratch - using the new knowledge and tools in front of you. If that workflow is less optimal than your current, toss it, but if it is better, give it a try.
A support network is your most important asset in getting things done. It can take a very long time to build a support network, but that doesn't mean it is impossible to start building a new one later in life. Here are some tips when building a support network.
- Find a mentor - Find someone willing to take you under their wing. Ask them if they will be your mentor.
- Be a mentor - If you are in a position to mentor someone, do so. Ask them if they'd like to be your pupil.
- Support Others - By supporting others you help to strengthen and grow your own support network.
- Ask small questions first - If you're unsure if someone is willing to help - ask for 5 minutes of their time. If they are not willing to give that, find someone else.
Having a support network with redundant roles is also useful. If only one person can answer certain questions for you, you may find yourself asking too much of that person, and might be at a loss if that person is away or unreachable.
The best way to hone a skill is to teach it. Roughly a year ago, I wanted to strengthen my ability to do regular expressions (RegEx). While there are tons of tutorials that teach regular expressions, what was lacking was a fun
way to learn. So, I created http://regexquest.com/
. It is a game that is story-driven that acts as both a tutorial and test of regular expression skills. For me to make the game, I was motivated to push my skills.
Beyond the motivational aspect of teaching, it is also benefits others. Going through a tutorial will only benefit you, but through teaching, someone else benefits from the knowledge you have. Even if it is simply providing and introduction to a friend, you are creating much more value.
Go out and teach - and have a wonderful weekend.
(Drawing courtesy of Pablo Francisco Arrieta Gomez [xpectro])
Not only can a lengthy email (or post) cause a reader to say TL;DR, it can leave itself open to interpretation leading to misunderstanding. To communicate effectively - especially via e-mail:
- Highlight the key points
- Provide a summary if necessary
- Focus on only one topic in an email
There is nothing wrong with sending 3 shorter e-mails if there are three different talking points. That allows three discussions to happen specific to those talking points, as opposed to one long thread which may get confusing.
Surviving the Black Hole
All black holes have an area that is known as the event horizon. This is the point at which - after crossed - nothing can escape. With work - this can be thought of as a nervous breakdown. Avoiding the nervous breakdown horizon can be difficult once you have started the spiral towards a black hole.
Black holes happen all the time in work/life. They arise when the amount of work it seems we need to complete in a day surpasses the amount of hours we are willing to work. Being expected to complete 12 hours of work in a 10 hour day feels like those last 2 hours will spill into the next day, putting you behind, leaving you 10 hours to do 14 hours of work, then 10 to do 16, and so on... The vortex happens when we fail to organize and try to jump into action. Unless you have just a one-time burst of tasks, the way to avoid a full-system meltdown may seem a bit counter-intuitive, but works:
- Don't work on your tasks - Diving right in is the wrong thing to do.
- Get organized - Everyone runs with different levels of organization, but to avoid a black hole, you need to be rigid in ensuring you have your task list written down and prioritized.
- Re-prioritize your list - Double check your task list and ensure you have a good priority list set. If one task is being blocked (waiting on someone else) simply move to the next task on your list.
- Identify repetition/Long tasks - Find items on your list that have common threads and try to template things. Need to follow up with 20 clients? Write a form e-mail, then copy/paste what you need from that. Work smarter not harder.
- Start when you are ready - Once you are caught up on e-mail, have all your tasks in order, and clearly know how you can efficiently achieve your tasks, then you can start getting to work.
Even something as basic as walking can be an amazing metaphor for how we work - and how we can work best. When you have a clear path, you can effortlessly walk without any mental effort. In fact, your body wants to continue moving forward, and will so with ease. You can stop if you need, turn if you need, but any course change requires mental effort.
Running through an obstacle course is a completely different story. Not only do you physically have to be able to overcome an obstacle, you need to mentally be able to navigate and transition to the next item. All of your active brain power must be focused on staying on your feet and keep moving.
Most of us are aware of when we're in "stroll-mode" and "obstacle course" mode while doing work. We try to avoid obstacle course as much as possible, and work towards stroll-mode on a daily basis. There is one mode that can be deceptive - wandering aimlessly.
Wandering aimlessly is when decision points are created on the spot. Imagine taking a walk in a park and every time something new came into vision, having to asses if you're going to go in that direction - or even worse, taking a few steps off your course to get a better view. If you have all the time in the world, or absolutely no goal other than to enjoy the scenery, this is wonderful, but with work, there are deadlines and goals, and this can destroy productivity.
Avoid Wandering Aimlessly by using "Discovery"
Discovery is a great way to forge a trail when one does not seem clear. The major different between wandering aimlessly and discovery is that discovery has set decision point spots. Taking the hiking trail example a bit further - you would stake out good lookout points, such as the top of a hill, opening of a river, or existing path. You would work towards that goal and wait to gather information until you have reached your lookout point. From there, you stop and give yourself a set amount of time to discover. During this phase, you look around, get a closer look, and gather as much information (in the time frame you've allotted) then make a decision on your next lookout point (or your final destination).
Even when you don't know where you're going, keep these tips in mind to remain productive and reduce mental fatigue:
- Avoid obstacle courses
- Use maps and goals to hold your comfortable stride as long as possible
- If you're unsure where to go - use discovery
- Try not to change direction mid step
Tunnel Vision - or hyper focus - is an amazing way to achieve difficult or long tasks in an extremely short amount of time. To achieve this, you need to strictly follow these rules.
You cannot hyper-focus too long or too often.
- Have a clear goal - Your know exactly where your destination is. Like a train station.
- Have a clear path - You need to have a list of tasks that outline how you're going to get from point A to point B. Hyper Focus only works when you do not have to make big decisions.
- Remove distraction - Stops or distractions will cause you to lose significant momentum. Limit e-mail to once every few hours and turn off social media and/or your phone.
- Accept that your path cannot change - To achieve hyper focus and hyper productivity, you cannot question your direction, you simply have to get to your destination as quickly as possible.
Despite the benefits of hyper focus, its inflexibility and potential mental strain (it is the equivalent of running a marathon, but for your brain) make it a poor choice for daily activities, but sometimes we're faced with two weeks of work and only three days to accomplish those tasks. It is those times that we can turn to hyper focus - turn off all other distractions and map out a clear path, then go.
We do thousands of tasks every day. Some take us seconds, others minutes. Automation of tasks has gotten us to where we are today, and will continue to enrich our lives. The graphic above was generated through a few short lines of code and some random variables (code/output below).
Even if you aren't a programmer (something I highly encourage everyone learns to do) there are tons of ways to automate tasks. Apple has a built-in application called "Automator" that allows you automate tasks (tutorial here). While windows doesn't have a direct answer, there is a good post on lifehacker about how to use the java program "actions" to automate tasks.
Automation of tasks not only saves you time during your daily life but it also opens up new opportunities. Often times, we rule opportunities out as non-economical. Take the theoretical task of checking your twitter stream. Right now, it's manual and takes time for you to determine useful tweets from non-useful tweets. If you spent a few hours wading through tons of tweets to find a few good ones, it would be hard to imagine building a business as a "tweet curator." But, if you could automate the process and read hundreds of thousands of tweets and determine the best few, you suddenly have product.
Want to generate your own random drawing, go to http://zenoftechnology.com/randomdraw.php or get the source at http://zenoftechnology.com/randomdraw.txt
Experimenting is a great way to learn. With an experiment, we learn if we succeed or fail in an environment where success is not a necessary goal. The issue is, many of us conduct experiments in both isolation and in private. While this type of experimentation lets us hide our failures and/or crazy ideas, it also reduces our chances for success and the depth at which we can learn lessons.
Zen of Technology is one of my public experiments. I'm providing all my content for free - via e-mail and then on the web. I include no advertising, and will not be charging for access to the content. I've had some good posts where I get positive feedback, and some bad posts that are weak on content. After a string of bad content, people drop off, and I've contacted them asking for feedback. That feedback has been wonderful in helping me to shape future content and really see what people's needs and wants are. None of this would be possible if I simply wrote all this content down in a private Google Doc hoping to turn it into a book at some later date (which is something I do hope to do).
Additionally - I'm building a brand. Even if everyone dropped off the mailing list, in the future, I can point to the content I've generated for my resume and talk about my efforts and tangibly demonstrate that I was able to keep a commitment even when there was no financial reward. Also, simply by the act of doing something publicly makes you work a little bit harder. Even though chances are - without marketing - only a few dozen people will see your work, the fact that it will be seen makes you try harder and produce better quality work.
It doesn't have to cost you anything
I pay for hosting (where Zen of Technology lives, as well as a few of my other experiments) but if you simply want to have a blog, you can get one for free. Wordpress, tumblr, and many other blogging platforms allow you to have blogs for free. If you're looking to create coding projects, things like GitHub have free options and you can get very cheap hosting ($5/month) at a slew of places (such as DreamHost.com whom I'm using for ZoT).
Public allows for easy collaboration
By having a project public, you have the option of enabling quick and easy collaboration. For example, one of my experiments - regexquest.com - had a contributor do a complete design overhaul of the site (because my original design was quick lacking). Blogs allow users to comment, and there are tons of feedback mechanisms for other types of projects that let users communicate directly with you and provide feedback. You may not want collaboration and feedback, and can turn these features off very easily.
You may fail - but you may inspire others
You may start a blog focused on DIY projects - turning IKEA furniture into sculptures, drawing, painting, coding, etc, and give up on it 3 months in. Traffic was low, comments were low, and you lost the inspiration to continue - it happens. But, your content is out there. If you did something unique and provided value, others will eventually find it and extract that value. A personal story may help someone through a difficult time. A programming tutorial may help a programmer solve a problem much quicker. A DIY project may inspire someone to start their own business selling homemade furniture. These things may be impossible to track, but, if your content/experiment was never there, then the chance of it making a positive effect are zero.
Following up - what are your experiments/projects
Share with me (in comments or via e-mail) any experiments you have going on. Why did you start it? Why are you still doing it? Also - let me know if you are OK with me sharing them with the mailing list, I'd love to put together a list for others.
You are the greatest tool that you possess. And, unlike your computer or laptop, you can't throw it away and buy a new one if it's running sluggish. If properly honed, your body and mind can do amazing things. If treated poorly, you will be sluggish, impatient, and your decision making skills will go out the window. The worst part about this state of mind is that while you are in it, you are rarely aware of it.
Each person's body is unique, but general consensus recommends you do the following to remain in peak mental condition:
- Sleep 6-8 hours per night - Also note - you can't bank hours. Getting 4 hours per night during the week and sleeping 12 hours on the weekends is not the same.
- Drink water - Ultimately you can drink any fluid, but I prefer water. Mayo Clinic say the "Drink 8 8-ounce cups of water" rule is reasonable, but you want at least 2 liters of water per day.
- Eat food - Having your blood sugar too low can really throw you off (and isn't always obvious to you). My personal recommendation is to eat 3 meals per day (Breakfast, lunch, dinner) and snack regularly between. Always keep a snack on hand if you'll be away for a while.
- Take a walk - While regular exercise is always recommended, sometimes going to the gym can be hard to schedule. Make sure that you walk at least a mile a day, and try to get outside and get some sun.
- All things in moderation - The human body is a precision instrument. Give it too much or too little of something and it gets confused. The body doesn't handle extremes very well.
There are many ways to get from point A to point B. In fact, for most problems, there are also many solutions. For problems we frequently encounter, the most comfortable or familiar path can gets followed most. Soon enough, we see this as the only path. That route becomes habit. Additionally, we lose sight of the individual steps and start to see the path as a single step. This can lead to difficulty when road block occur.
If you break a problem down into steps, when you hit a roadblock, you can simply back up a step and find a new path from there. Additionally, you can look to see if there are quicker solutions.
If a solution is clear, working backwards can be a great way to discover new paths as well as roadblocks.
Less is More
Overcommitting seems to be the norm today. For many reasons, we have a hard time saying "no." Additionally, with such quick access to information and do-it-yourself guides, we often have a long list of things we want to do in our spare time.
A task never completed is worse than a task never done, as it is (consciously or subconsciously depending on your personality type) a reminder of failure on neglect. Additionally, if we have a task list with 9 items and add a 10th, it's possible that completing that 10th task will mean the quality of the 9 original tasks will suffer.
Quality really does win over quantity in the end. Doing one thing very well will make you much happier and successful than doing a few things well, or even worse - doing many things passably (or poorly!).
There is a simple rule that can prevent this and increase the quality of your work - task removal.
Every day, remove one item off your task list. Don't just de-prioritize it, but remove it altogether. After a few days, this task may become more difficult, so change to a frequency of once a week. Ultimately you want to get to a point where you aren't adding these types of tasks to your list, but this is a way to prune your existing list without changing your current habits.
In Clive Thompson's new book "Smarter Than You Think
" he talks about how the internet and our technology tools have helped us generate a wealth of content. Even if only a small portion of that content is relevant to you, the sheer volume makes it impossible for you to keep up. Thankfully there are things you can do to help weed through the drudges, keep up to date, and still have hours left in the day to do your job, be with your family, and actually live your life.
- Rely on a few aggregation sites - Based off your interest, there is most likely quite a few options for websites that will scour the news and myriad of amateur blog posts and bubble the best ones to the top. The Gawker network (Gizmodo, Kotaku, Lifehacker, etc) do a very good job of this. Additionally, there are sites like news.google.com that will aggregate based off topic. Limiting yourself to aggregation can be a good way to stay informed, while keeping away from being overwhelmed.
- Limit your connections - While you may feel a sense of pride from having a high twitter follower count, there is clearly no award for following the most people. Additionally, if you follow too many people, your stream can turn into a gush which quickly becomes unmanageable. Regularly unfollow people who's tweets are not relevant to your interest in using twitter. The same goes for Facebook - if someone constantly posts about some cause they are behind but not relevant to you - remove them from your stream (you can do this without unfriending).
- Accept that you cannot know it all - It truly is impossible to read every blog post about a topic, every comment, watch every youtube video, etc. There will always be more LOLcats pictures and silly memes. Most things on the internet come and go very quickly. By the time they are gone, it is as if they never existed.
- Organize - If you read something that you find valuable - bookmark it (in a logical folder structure). If you find an article that you want to read later - bookmark it. Even if you never end up reading that article, having an organized list of articles and information to refer to will help you (you never know when you will want to read it).
By no means should this replace any enjoyment you may have in diving deep into a reddit thread, watching youtube videos with less than 300 views, or following hundreds of blogs via RSS. Often times, when faced with too much information we say "TL;DR" and end up reading nothing - the above rules give a good guide on how to quickly access relevant and curated content.
We often hear advice that tells us to follow our passions. While obvious, it isn't always the most useful. If everyone quit their job (assuming their job is not their passion) and followed their deepest passions, I have a feeling society would unravel.
One way to flip that while making it more useful is to say make your job your passion. There are a few key things you can do:
- Determine the value of your job - Try to extract the societal value of what you do. If you're a sanitation engineer, think of your job as cleaning up and making the area more beautiful. If you work as a barista, think of your job as helping people start their day and enjoy a nice beverage - not just making coffee.
- Have a goal - If you don't already have at least one life goal, come up with a couple. Then find ways that you can link those goals to your job. Even if it is simply building a skill that lets you achieve your goal.
- Find the good - Spend 5 minutes each day finding the parts of your job that you enjoy.
- Make it a game - Sometimes we have to perform repetitive, boring, or otherwise unenjoyable tasks. These can be made much easier by setting up milestones and rewards. For example, if you have to clean the bathroom, give yourself the challenge of finding 5 things you can do to bring a smile to those using the bathroom - such as folding an origami crane out of a piece of toilet paper and placing it on the toilet lid. If you find 5, then you can take a 5-minute snack break when you're done (don't forget to wash your hands first!)
If you're in a job where you simply cannot find a way to enjoy it, or make it your passion, then you should consider finding a new job - not all jobs are right for all people. What you will find, is that as you start to make your job your passion you will be better at it and have more success which will make it even easier to make it your passion.
Dealing With Tech Frustrations
Technology is wonderful - when it works.
I'm sure this scenario sounds familiar - you open a new application, select a file to open and then - disaster strikes. Either the Mac beachball of doom, or the windows hourglass appears. It spins and spins and spins and you hope that it will stop and everything will simply work. But no, the file fails to open, and the application crashes. What to do next?
First - relax. Your computer may seem to be angry at you, but it has no emotions and sometimes just needs time to finish whatever processes it is chewing on.
What is with that horrible drawing?
- Give your computer a minute to catch up. If you have tons of things processing, that can slow things down and may have been the cause of the issue.
- Try again. Computers make millions of calculations per second and errors happen in rare cases. Sometimes simply trying your action again will solve your problem.
- Restart your computer. Give your computer a fresh chance and open your file/application as soon as your computer is up-and-running.
- Update your software. Take the time to make sure you have the latest version of your operating system (Mac OS or Windows) available to you and that the application you are using is up-to-date. Often we get notices saying "Your software is out of date, do you wish to upgrade now?" If it ain't broke, don't fix it works, but as soon as it is broke - fix it.
- If all else fails - Google. Get the full text of your error message and search for it in Google/Bing (make sure to remove anything like the file you tried to open, or anything specific to your computer. This sort of specific information will limit search results).
- Ask for help. I leave this step last, because if you ask a "computer person" for help when you first get an issue, they will go through steps 1-5. By waiting until now, you will most likely have found a solution, and if not, you can let that person know you've come this far and still have no solution.
I've always wanted to learn how to draw. I never had an innate ability, but I love to doodle and my business notebooks are full of doodles. Since I have used this as a way to discuss learning new skills, I decided to take this opportunity to learn a new skill for which I have no natural talent for. This image above is without any reference or lessons. I will be making a drawing for each post and I hope to see progress with every post.