Return to the Small Web

I’ve started reading Bubbles.town in the past weeks, and it is a positive experience to return to the small web. Credit to the Bubbles.town developers and content creators, you have built a new community where people can exchange ideas and have a reason to return. The text-dominant content takes a step back to the traditional form of words, meaning, and slow ideas. This direction is refreshing and increases my desire to participate.

Other sites and internet companies have run out of ideas and are forcing video, especially toxic ‘shorts,’ down our throats. The reason the popular sites feel so broken is because of how these companies are run. When you work for a large company, product managers are required to produce specific results to meet their career and compensation objectives. Because of this, the quality of ideas tends to degrade over time. Corporate cultures keep pushing these changes into their services whether or not there is any actual demand for them. This is how we end up with “Dead Internet Theory” and content that is only aimed at the masses.

Bubbles.town steps away from this by placing power in the regular person. While other sites fill their content with autogenerated bots, Bubbles is creating a healthy space for discourse that has been abandoned by the behemoths who only care about impressions and eyeballs. Contributions vary from blog to blog, but it is a return to meaning, knowledge, and perspective. It is refreshing and wonderful to spend time on a website that doesn’t force an algorithm on me and has genuinely interesting and original posts consistently.

Apple and the FBI Dance a Security Tango

Troy Hunt successfully frames the context of Apple vs the FBI court order in his must read post, but ignores an important question. What is on the iPhone that is so important to the FBI that they would go to this length to get it? This is the first time that a court has ordered a technology company to develop new software requiring Apple to backdoor their own iOS system.

In October 2015 Obama agreed to stop pressing for legislation for encryption backdoors in technology products. Now Bloomberg highlights that this was a tactical change in direction and not a policy change.

“In a secret meeting convened by the White House around Thanksgiving, senior national security officials ordered agencies across the U.S. government to find ways to counter encryption software and gain access to the most heavily protected user data on the most secure consumer devices, including Apple Inc.’s iPhone, the marquee product of one of America’s most valuable companies, according to two people familiar with the decision.

The approach was formalized in a confidential National Security Council “decision memo,” tasking government agencies with developing encryption workarounds, estimating additional budgets and identifying laws that may need to be changed to counter what FBI Director James Comey calls the “going dark” problem: investigators being unable to access the contents of encrypted data stored on mobile devices or traveling across the Internet. Details of the memo reveal that, in private, the government was honing a sharper edge to its relationship with Silicon Valley alongside more public signs of rapprochement.”

The New York Times has taken the position this is a classic single case of a terrorist investigation, but fails to discuss the potential value of a dead man’s work phone as well. The NYT discusses Apple’s business value and the Justice Departments criticism, but completely ignores the value of a non-personal phone in a terrorist investigation. Since Farook destroyed his personal phone, it reasons there is nothing on his work phone, otherwise it would have been destroyed as well. Snowden points out that the FBI already likely has any information which could be reasonably extracted from this phone. logical argument that the FBI already has what they need

The FBI knows that Apple cannot get into the iOS 8 iPhone 5c without changing their software. The FBI also knows that Apple cannot physically get into the next generation of iPhone 6s running iOS9 due to improvements in the Secure Enclave. Therefor the window of opportunity to get into iPhones during future investigations is closing. If the FBI does not challenge Apple now, they will lose the ability to get evidence off future phones.

With this understanding, the EFF’s statement is very clear.

“It might seem the FBI wouldn’t go through such a public battle if they had a secret way to get the data, but even if they did it’s likely they wanted to take this case to court because the high-profile nature of the San Bernardino shootings makes this a sympathetic case to create a legal precedent in their favor.”

Apple’s public letter response to this order does not highlight the additional cost and challenges presented by the order but focuses on the dangers to civil liberty should the order set a legal precedent. Rightly or wrongly this is a master stroke from Apple, diverting attention from annoyed user base increasingly upset with software decisions and instead rallying the troops around issues in Civil Liberties.

Apple is hardware company, Google, Facebook, and Microsoft (minus Surface & Xbox) are not. This is why Apple is publicly starting this conversation in response to this court order. Should they lose this appeal, security conscious consumers will evaluate their options. International nations will also place pressure on Apple to decrypt phones in their home countries. Countries where human rights abuses take place, citizens will be less safe. This is a very important conversation for us to have about the future of Privacy, Censorship and Security in our country. But make no mistake about it, this is a strategic long term decision the FBI is leading.

First Year of Meditation

Around this time last year I decided to make meditation part of my life. I started with five minutes a day for the month of January. There were a bunch of days where I made it more than five minutes, but everyday I did at least five minutes for whole month.

At first I did not know what to do with myself. I was under the impression my thoughts would eventually drift away and the serene inner peace I was hearing about would appear. In some ways it did, but only for very brief fleeting moments after several months of pillow time. For the most part I was left searching for something, over and over again, anything.

After reading many books and articles about what I should actually be doing, I realized that searching was a misleading action in my practice. It was necessary, it really opened my mind to the idea of sitting for longer periods of time, but I eventually outgrew the search. Searching first gave away to waiting. But even more quickly waiting too gave away to something else.

About half a year later, when waiting gave away, I found my mind watching itself. The watching sensation recognized for the very first time the immensity of the thinker. I will readily admit having identified with the thinker my whole life. I placed value on the thinker, as the part of the brain allowing me to do the things I love like programming and chess. The thinker has always been the part of the brain from where my success has arisen. When the thinker finally gave away to the watcher, it was astonishment at this new place or feeling which replaced it.

This was my first insight. The thinker quieted down for long enough for me to understand the dominate trains of thought from a new perspective. I found a place of existence where those thoughts we no longer there, they were no longer even necessary. The best part of this realization, was not that this is a place meditation allows me to access, but this is a place I can always access.

It is most certainly true in meditation the watcher can be much more focused and yet aware at the same time. But that does not preclude me from watching in the every day moments of life in a more accessible manner. This realization has enabled me to be more like the watcher, in a way not possible without meditation.

This present sense of watching has been one of the highlights in my practice in the past year. It has taught me there is still much to learn about my own mind, and the experience I can have. I suspect I have a couple more iterations of this cycle of searching, waiting and watching on the path to new understandings. I am much more patiently practicing at this point then when I started. I choose to sit at this point as I have learned it is very rewarding in its own right.

Vibrance

A sphere of energy rolls towards a glow on the horizon. Entropy glides frictionlessly adjusting the path as plasma. Once it was I, now no longer.

No Matter

Wind rustling the summer green maple leaves, Rolling ripples from rain drops on the gentle river, Luminescent sunlight warming the desert rocks

Monument

The world crumbles under the weight of the truths you carry. With each step the ground gives away and yet you are still standing.

Maybe it is because they are truths and not falsehoods. These truths have their own pull, strong enough to hold you where there is no support.

Where do you go from here? Lost in space, the voyage is no longer physical. Emotions are free range, pure happiness is present only to be replaced by deep sadness.

The light fluctuates with these feelings, the range is emitting valiantly to absorbing completely. The mind does not take this well and executes a last defense. Where once there were mountains and seas, there is now nothing but the hum of you and these monumental truths.

Developer Slang 101

All of these definitions are taken from Stack Overflow. Take a read through, they’re hilarious. Here is a summary and my favorites.

Gold Plating Adding features that are unimportant (as little as to be useless)

Build Potato When your code check-in breaks the build, you receive a build potato. It stays with you until someone else’s code check-in breaks the build.

220pxpotatoandcrosssect.jpg

Hydra Code Code that cannot be fixed. One fix causes two new bugs. It should be rewritten.

A Duck A feature added for no other reason than to draw management attention and be removed, thus avoiding unnecessary changes in other aspects of the product. Wire_005.jpg

Smug Report - a bug submitted by a user who thinks he knows a lot more about the system’s design than he really does. Filled with irrelevant technical details and one or more suggestions (always wrong) about what he thinks is causing the problem and how we should fix it.

The Affair If you invoke a private method in C++ from a class with friend status.

Mortgage Code Code purposely so terrible that only you can maintain it, forcing your employer to keep you; thus providing job security ( so you can pay your mortgage).

The Counterbug A bug you present when presented with a bug caused by the person presenting the bug

Workaroundability The feeling when already hacked approach still can or can’t be hacked further.

Perl-grade obfuscation The highest level of obfuscation possible. Better than passing code through a 1-way hash function. “No one will reverse engineer our code - it’s written in Perl.”

Smurf Naming Convention When almost every class has the same prefix.

“SmurfAccountView passes a SmurfAccountDTO to the SmurfAccountController. The SmurfID is used to fetch a SmurfOrderHistory which is passed to the SmurfHistoryMatch before forwarding to either SmurfHistoryReviewView or SmurfHistoryReportingView.”

ColdFusion An out of date esoteric technology or language

Ninja Comments: // /*** */

Egyptian Brackets:

if (a == b) {
    printf("hello");
}

egyptian.jpg

The Heisenbug A computer bug that disappears or alters its characteristics when an attempt is made to study it.

IRQed annoyed by interruptions, The distinction between “IRQed” and “irked” is subtle and only obvious in written form or by context.

Stringly Typed A riff on strongly typed. Used to describe an implementation that needlessly relies on strings when programmer & refactor friendly options are available.

Automanually The term is used to refer to a batch job or application that should be scheduled or triggered automatically, but due to unspecified reasons (typically, bugs), requires manual intervention every time.

Flux Capacitate When a piece of jargon is used to confuse someone who really has no business asking a particular question.

bush_confused.jpg

The Higgs-Bugson A hypothetical bug predicted to exist based on a small number of possibly related event log entries and vague anecdotal reports from users. It is difficult (if not impossible) to reproduce on a dev machine because you don’t really know if it’s there, and if it is there what is causing it.

Databasically “Hey, I’ll put all of our customers into a Word document and then we can X.” “No, we should do that database-ically so that we can keep that list up to date.”

The Mad Girlfriend Bug For when you see something strange happening, but it will just tell you everything is fine.

computer-out-window.jpg

Natural Selection The act of replacing someone else’s code with your own.

The God Object An object that knows too much or does too much. http://en.wikipedia.org/wiki/God_object

The Megamoth or Mega Monolithic Method Often contained inside a God Object and usually stretches over two screens in height.

DeathStar2.jpg

Common Law Feature A bug in the application that has existed so long that it is now part of the expected functionality, and user support is required to actually fix it.

The Impediphile - Someone who codes in such a manner as to constantly cause impediments to others work.

“You’re not holding the mouse right” When someone shows me a problem they are having and I don’t have an answer for them, Just say

Floater The case in the bug tracking system that seems to always be sitting near the top of the queue but never gets claimed. It just floats there while developers work around it.

Fidel-Floater–11508.jpg

Yoda Conditions using if(constant == variable) instead of if(variable == constant), like if(4 == foo). Because it’s like saying “if blue is the sky” or “if tall is the man”.

yoda%20conditional_219eb62d-b558-4e0f-ac81-38e9b0fc80dc.jpg

Are You a Windows User?

I switched from windows to Linux in 2004 when I was sick of windows dying once a month. I became so good at reformatting I could remember my windows key off the top of my head. That key is long gone because I haven’t used windows in years on my home machine.

I spent time with SUSE Linux, Gentoo (which I still believe is the fastest OS available) and Ubuntu. Gentoo, although I loved the speed, died on me every two or three months. An improvement from windows, but eventually after I graduated college, I didn’t have time to maintain the sandbox anymore. So I switched to Ubuntu.

I kept Ubuntu on there for a while but realized I’d never use it again. After some hacking and crafting I managed to get my partitions converted over to HFS+. I switched to mac in January when I built my newest machine. Quad core, I’m never going back.

That said, I do believe an open source operating system will eventually over take a flagship mac operating system in features, ease of use, and eye candy. Until then I will remain on OSX.

Organic Algorithym

How can anyone look at this image and deny the internet is a sentient being? This pattern beautifully parallels the brain structure’s self referential chaos of loops, pointers and recursion. Every person plays their organic part in assembling the structure by linking, writing, reading and re-linking. We travel daily to our favorite nodes searching for nuggets to tickle our fancies and share with others. We continuously add informational nodes, yet the structure itself never changes shape, because of it’s self referential integrity. The internet is just humanity’s recursive electro-mechanical brain, and we are just nodes in the sphere of the organic algorithm.