What were people expecting out of Facebook?

Cory Doctorow, “You can help the web be better in 2018: just ditch Facebook and use your browser instead“, Boing Boing

Foster Kamer, “The 2018 internet resolution everyone should have: Forget Facebook“, Mashable

I wonder: what were people expecting out of Facebook? I always looked at Facebook the way Kurt Vonnegut looked at existence in Man Without a Country: “We are here on Earth to fart around. Don’t let anybody tell you any different.”

I think that’s a result of starting on Facebook back in 2004 in college, when you had to have a .edu email address to join. At the beginning it was just a text entry. “Kirk Kittell is” was fixed—a literal “what are you doing?” More or less, that’s the baseline of what I’m looking for in the site. I just want to see what people are doing. 14 years on the site, and now I have connections with friends from high school, college, early work days, the summer at ISU in France, people I met while traveling in India, some of my wife’s business school friends. It’s clearly the best way to keep in touch with such a range of people. There is no similar substitute that’s that easy. I don’t think all of the people I know should make their own web sites. It might be interesting if they did, but even if they created them I think most of them would stop maintaining them anyway. And I don’t think I’d be able to maintain checking all of them. That’s life.

But as for one of the main points, stepping back to using the browser bar and bookmarks to get to content—I’m down with that. I’ve been getting back to it myself. Google killing Reader seems to have damped the use of RSS for news, but I get plenty of it through Feedly. Getting news from Facebook and Twitter is garbage. It’s rigged. As it should be. Their job is to make you want to go to them for whatever it is that they’re selling. That’s obviously the pitch.

Back, back, back in the day there were webrings. Do you know what those are? Congratulations. You’re old. They were amateur and interesting ways to find amateur and sometimes interesting sites. (John Scott, “Whatever Happened to… Webrings“; “What Ever Happened to Webrings?“, Hover.)

I don’t remember where I was going with this. Whatever it was, it devolved into some variation of: things were better when we were younger.

I don’t believe it was all that much better—there was a lot of crap—but there are a few things I’d like back which have dropped off along the way. Web site discovery via other web sites is one of them. Webrings were super cheesy. They can stay on the shelf. But I think I’m going to bring back my /links page.

Automate and win

Today at work I gave a presentation to our division-wide systems engineering group at work about the why and how of automating some regular tasks that we do in our every day jobs. Over the past two years I had written some code (DXL, Python, VBA, etc.) to make some of the horribly boring and periodic work I do get itself done so I could work on other things I’d prefer to do. So many systems engineers turn into button-pushers and process jockeys. So many know the process but forgot all about the content. I don’t want to be like that. Train some software to do the work, and you know the process and how to write software. Win-win.

It took a few years to learn how to code, and now I can use it. It was a painful—a terribly jarring experience for my ego. Kind of like getting out of shape physically. And like getting out of shape it’s not hard to get back into shape. You just have to do it. Any idiot can do it—sometimes my life feels like an living testament to the ability of idiots to do things—but it takes time to do it. Unlike getting in shape, it’s not clear where to get started. It’s pretty clear how to run, but code? Where do you do that?

Anyway, the larger point is that it’s not just that I don’t want to be like a zombie, I don’t want others to be like that either. At Big Corporation, when you start carrying that flag your life is a strange mix of being disliked by your manager (I got a below-average score on my performance evaluation for writing the automation code that saved the project and company money because it wasn’t value-added to the project) and getting affirmative feedback from your peers (who know better than to rock the boat, but want the boat to be rocked a little).

I had some fun with the presentation. I can’t post the whole thing here because it has some internal info, but I would like to share one slide that might be my masterpiece:

Look at that beautiful transition, from the depths of Lumbergh to the heights of what would you do if you had a million dollars.

And then there was this beautiful transition (you’ll just have to imagine that the first three pictures were after a statement of the problem, and the fourth after the statement of the solution).

So it’s a fine line between being clever and making a point. I’ve always tried, in these Big Corporate settings, to catch people a little off guard. There’s a kind of protocol: stodgy, predictable, don’t make me think too hard just give me some bullet points. Instead I’d like to kick in the door and let them know: there’s a different way to do things. I’d like that to be my niche. I don’t think one presentation establishes that, but I hope I planted a seed.

Getting started in a Machine Learning class

This week I started CS498 Applied Machine Learning at the University of Illinois. Getting suplexed by CS498 Database Systems last semester wasn’t enough, I guess. There are still a few ribs left intact—let’s break those, too.

Jokes aside, the reason I’m taking classes again is that I underestimated how I close I was to obsolescence at work—how close we all are, really. (Frederick Herzberg, Work and the Nature of Man: “How comfortable it is to be able to earn a living today on yesterday’s knowledge, but how often this leads to obsolescence.”) You’re either getting better or you’re getting worse—you’re sure as hell not staying in the same place. I used to think that was hokey, but now I believe it.

Back to machine learning: what the hell is it? I don’t know. The professor just jumped right into classification of data—an indication of how fast the course will go, I’m sure. Implicitly, that means that if I want to know what machine learning is, its history, where it came from and how it got here, then I’m going to have to piece that together. So be it.

I’m going to use the same approach for this that I’ve used successfully for other topics where I’m a horrible dilettante: plow ahead, be humble and don’t forget the difference between what I actually know and what I think know, and leave a trail for others who are starting from the bottom. I’m sure it’s been documented a million times how much more a person can understand a topic when they have to teach it.

Notes: kirkkittell.com/notes/machine-learning

Here are some bits of information that I’m starting with…


Wikipedia: Machine learning

Vishal Maini, “Machine Learning for Humans“, Medium, 19 August 2017


Samuel, A. L. “Some Studies in Machine Learning Using the Game of Checkers.” IBM Journal of Research and Development 3 (July 1959): 210-229.

Mannila, H. “Data mining: machine learning, statistics, and databases.” Proceedings of 8th International Conference on Scientific and Statistical Data Base Management. IEEE Comput. Soc. Press, 1996, 2-9.

Wernick, Miles, Yongyi Yang, Jovan Brankov, Grigori Yourganov, and Stephen Strother. “Machine Learning in Medical Imaging.” IEEE Signal Processing Magazine 27 (July 2010): 25-38.

Langley, Pat. “The changing science of machine learning.” Machine Learning 82 (March 2011): 275-279.

Simon, Herbert A. “Why Should Machines Learn?” Machine Learning. Ed. Ryszard S Michalski, Jaime G Carbonell, and Tom M Mitchell. Symbolic Computation. Springer Berlin Heidelberg, 1983. 25-37.

News articles

Steven Levy, “How Google is Remaking Itself as a “Machine Learning First” Company“, Wired, 22 June 2016.

Alex Hern, “Google says machine learning is the future. So I tried it myself“, The Guardian, 28 June 2016.

Some thoughts on slow chess

I asked an old friend on Twitter the other day if he wanted to play chess. I’m no good at chess, but I thought it would be fun to play a really slow—and by slow I mean weeks or months—game of chess.

A few times, back in the day—it must have been graduate school or just after—I would go to Yahoo! Games to play chess, or some other simple board games. I didn’t realize it until after writing the preceding sentence and trying to go to Yahoo! Games that it doesn’t even exist anymore. (Wired: “Yahoo Games Has Passed Away at Just 17“) Anyway, I always got beat, but it was fun to play, and to maybe chat with someone for a while before moving on.

I had a thought that we good just send our moves back and forth to each other via Twitter. Slowchess. Pat myself on the back for coming up with that. But slowchess.com exists and redirects to net-chess.com, which looks like an active but old-school interactive chess game site. And what’s more is that there appears to be a term for this kind of asynchronous game: correspondence chess. There’s even an International E-mail Chess Club. Should’ve known better than to think I came up with something that clever on my own.

I’m going to spend a little time developing something anyway, just for coding practice. I’m thinking it will work like this. Start a game with a friend on Twitter by sending a tweet to @slowchess (surprised that handle was still available). Tweet your move to @slowchess for that game, and both players get a tweet with the current game board. Repeat until it’s over.

That’s it. Maybe it’s a lack of vision, or having come of age when the web was fairly half-assed and I wasn’t even able to develop eighth-assed solutions, but I’d like to see how lo-fi I can do it while still making it viable. In fact, while developing, I could even make it work Mechanical Turk style. Everything online seems to have features Features FEATURES with artificial intelligence this and machine learning that and that’s OK. I’m into it. But I don’t want it in everything. I just want to goof off a little and learn how things work.

The worst things about running in the cold, in alphabetical order

  1. Breathing
  2. Having fingers

    1. -9°C. Feels like 17°C. And that’s a step up from last week.

      Breathing doesn’t hurt. It just leaves a funny sick feeling in the bottom of my stomach. Air doesn’t go down there. Where is that signal coming from? Hypothesis: the stomach is smarter than the brain, or at least has better survival instincts.

      And fingers. Two pairs of gloves. Three pairs of gloves. Doesn’t matter. Wind finds a way. And ten minutes into a run, the signal starts to break up, and the fingers don’t want to bend, and eventually they are there only if you look at them. Just useless, stiff, painless sausages. But wait, there’s more! In twenty more minutes you have a choice between (a) the pain of waking-up-fingers or (b) the anxiety of why-aren’t-these-fingers-waking-up.

      Trust me, you really need them to wake up. Try unlocking your front door while holding the key with two sausages. Possible, but not recommended.

Starting over–how hard could it be?

Have you ever looked over a cliff and felt vertigo–not to imagine falling but just feel the dizzying spin of the mind as it copes with the perspective and its implications. To brace for the impact that isn’t coming, but feels real nonetheless. To feel unstable even with four points of contact on the rock.

That’s what considering a professional shift feels like, anyway. The paychecks are coming, hands are on the rock face, something feels like it is floating down and away.

Instead of doing a web search for something obvious (“mid life crisis”) I opted for “know thyself”. Don’t ask me. I just live in this head.

The first (useful) link (that wasn’t about motivation or self-realization or some other claptrap that I’m probably going to be invested in within days at the current rate) was this one: Bence Nanay, “Know thyself is not just silly advice: it’s actively dangerous“. That’s not what I was looking for. I was looking for something a little more soothing so I could sleep tonight and make it through eight hours of work tomorrow. Just give me one of those quizzes and tell me what I am.

There is a huge difference between what you like and what you do. What you do is dictated not by what you like, but by what kind of person you think you are.

The real harm of this situation is not only that you spend much of your time doing something that you don’t particularly like (and often positively dislike). Instead, it is that the human mind does not like blatant contradictions of this kind. It does its best to hide this contradiction: a phenomenon known as cognitive dissonance.

And there’s a link in there to this paper: Quoidbach, Jordi, Daniel T. Gilbert, and Timothy D. Wilson. “The End of History Illusion.” Science 339 (2013): 96. (Full copy here wink wink.)

Let’s just pick off the first sentence to set the tone:

At every stage of life, people make decisions that profoundly influence the lives of the people they will become—and when they finally become those people, they aren’t always thrilled about it. […] Why do people so often make decisions that their future selves regret?

Google, show me “mid life crisis”. Mine, yours, anyone’s. I’m not picky. How much is a red convertible?

[…] people may believe that who they are today is pretty much who they will be tomorrow, despite the fact that it isn’t who they were yesterday.

That’s more promising, right? A person doesn’t expect to change much in the future because they don’t recognize how much they’ve changed in the past. That’s the “end of history illusion”. The vertiginous feeling is leaning into the future over what your brain believes was a horizon not that far away. Imagining yourself becoming something else is, in that case, not much different than poking your head through reality. How else would you expect a healthy brain to react?

Stepped in a self-help book

I avoid self-help, motivational books because they give me the creeps. They’re a little unsettling to me. They don’t seem to me like they have wildly effective advice–to the extent that they have any practical advice at all, not just some cover-to-cover affirmative statements–but they still irritate whatever gland that is that makes me feel like I’m missing out on something. How does that work? I don’t know. It seems best to avoid it.

(Obvious pivot.)

Sometime last year I listened to Tony Robbins on Tim Ferriss’ podcast, and this year he popped up in an old version of James Altucher’s podcast that I downloaded. He was pitching his book Money: Master the Game. That title… oof. Hard to swallow. That’s like someone trying to sell me a pair of pants by telling me that they’re women’s pants–even if they fit, no thanks.

I got it anyway. (From the library.) The book is mostly vapid so far, but it’s interesting. I told my wife that my new year’s resolution this year would be to learn how to manipulate people–which was a joke, by the way. This guy has definitely tapped into some frequency that keeps you looking out for the next thing coming in just a few more pages, a few more chapters. I don’t want to read it, but I want to read it. What is that feeling? That compulsion? I’m somewhere around page 90 and I’d like to go to the other book I’m reading, but I also don’t want to miss anything in this one.

When he was pitching the book on the podcasts, the part that attracted me wasn’t the Yes You Can Get Rich part of it, but the idea that money could be a game. That really hasn’t been addressed yet in the book. But the idea has stuck in my mind. I bet if I could model my finances, and turn it into some kind of game and learn how to play it better than I’m playing it now, I could do better. And feel less anxious about our national religion, Money. And I could learn how to do the coding along the way to model something like that.

So I’m expecting that aspect of the book–dumbed-down motivational guide–to help me out. There’s something about having a published author give me a list of things to consider that feels more valid than ideas that I have myself. I’ll take that list of 7 Simple Incredible Invincible Steps For Amazing Freedom And Empowering Empowerment And Whatnot and build a simple game out of it. I’m serious. Why not? If it works, it works. Should be rich by Friday. Gimme $20 on Monday and I’ll show you how.

(Bonus: Step Right Up. “The large print giveth / And the small print taketh away.”)

One of my favorites: Python Weekly

Here’s one of my favorite email lists I’m a part of: Python Weekly.

I recommend it to you, even if you’re not a big Python person. What I like about it is just seeing the range of problems that can be solved. Honestly, I don’t even understand most of the Python stuff that it links to. And I don’t feel the need to understand most of it because I don’t rely so heavily on 3rd party libraries (for good or ill). I read through the links and absorb ideas that I can steal.

Do it up.


I checked into the Venture Cafe tonight at the Danforth Plant Science Center to hear some people pitch projects that they were working on. The one that stood out to me was this app: TableTalk.

The basic idea seemed to be this: make it easy to set up a table anywhere (via API connections to Yelp, Eventbrite, Meetup) and meet with people. Even if they’re people you don’t know, you could organize around an idea or topic.

I have a Meetup account, but I never use it. I’m a member (“member”) of a number of local groups, and I get the weekly updates, but I never use it. The regular schedule of the meetups make them seem like pseudo-organizations, and I’m not interested in that. And the feeling I get from the meeting announcements is that they’re aiming for big crowds, but there only seem to be a few people actually signed up. It all seems a little off for me, so I never use it.

TableTalk sounded nice to me because it seems to be aimed at a smaller audience per meeting—the size of a table, obviously. And it feels like a one-time thing for each event without any unnecessary obligation, even if you do repeat the events. The demo app worked quickly as well.

It’s planned for launch in a few weeks. I hope it goes well. I think it could go far.

On leaving well enough alone

This is a followup of sorts to this one: “My Recurring Nightmare” (15 Oct 2016).

On Friday, for our project 2 team in CS411: Database Systems, I needed to demonstrate the software we’re developing to the professor via Skype. The project is to develop a program that can perform SQL queries on CSV files. On Thursday night, I had a version of the code that only had simple capabilities (a single WHERE statement on a single table), but it worked.

And what follows is where we get the saying: leave well enough alone.

Since I ended up taking a sick day from work on Friday, I spend some of the time trying to develop more capabilities in the code. Mainly, just trying to get the thing to accept multiple WHERE statements. Naturally, I broke something. And that something that I broke, well, it broke everything. At least before it gave some correct outputs for simple inputs. But after the “improvement”: blank answers for everything.

And that’s what I got to present to the professor. Laugh or cry—what difference does it make?

At least I got to walk him through the code and explain how it was working the evening before. And it didn’t turn out too bad because the other project teams were also having problems, so another intermediate demo was scheduled. And I was able to get in there and, first, fix the thing I broke, and second, add the extra capability I was trying to get in there in the first place. So all’s well that ends well.

That moment of terror an hour before presentation time, though, was the stuff of occasionally recurring nightmares about college. I was tempted to say I learned my lesson about fussing with things that are good enough, but I’ve lived in this head long enough to know that I’ll do it again, and at the first available opportunity.

On GitHub, if you can work Python and would like to give it a try: SQL CSV ASAP.