Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 06 May 2001
Offline Last Active Sep 01 2013 08:00 AM

Topics I've Started

Go Live Editor

10 October 2012 - 10:54 PM

I've made a simple live editor for Go.
Posted Image
Here's a short video of it in action:


It's kinda like the Go Playground, except it runs locally (hence no restrictions on what you can do) and shows program output as you make changes to source code (no need to press any buttons).

The project source code is located at: https://github.com/s...ple-live-editor
I've made a binary for OS X (hopefully it works on 10.7+): https://github.com/d...Live Editor.zip

Let me know if it works for you and what you think. Feel free to fork, contribute, etc.

Level of detail for Twitter?

06 October 2012 - 12:24 PM

It kind of bothers me that all tweets have approximately the same level of prominence.

So when I don't check my feed for 2 days and then I have like 50 unread tweets, I end up skimming them instead of reading each one, and a tweet like this:


Does not in any way stand out over other much less significant tweets like these:


So I might miss the former almost life-changing tweet in the sea of 20-30 tweets similar to the latter.

I follow people who say interesting things, but some of them say 1 thing per week, while others say 10 per day. This means I end up missing things from the ones who talk less.

Is there anything that can be/is being done about this?

I know it's a hard problem to figure out which tweets deserve to be highlighted, but a hard problem doesn't mean it shouldn't be attempted.

Software Licences...?

01 October 2012 - 12:22 PM

I suppose if one is writing open source software, there should be some licence attached, right?

I'm not too good with the legal matters, nor do I want to spend much effort on getting better. Most of the ones I've seen have complex and lengthy documents, making it hard to understand them and choose the best one.

What I want in a licence is one that basically says two things:

1. You may do anything with this project that benefits the human race as a whole.
2. You may NOT do anything with this project that detracts from the human race as a whole.

I know it's not advisable to write your own licence (especially when you have no law knowledge) cuz it'll probably backfire and not do its intended purpose... But is there any licence that basically says that?

I would put my projects in public domain or the http://en.wikipedia.org/wiki/WTFPL licence, but I think the problem with that is someone can take it, and change the licence, change the attributions, and make it closed source, then sue you for working on it.

This would be disallowed by my licence above, because it may benefit one person/company by 1000 points, but each other person on the planet losing 1 point would outweigh it. However, making the source closed source but putting in 10x times the effort that the open source community was putting into it and making the product better would be allowed. Basically, the formula for net benefit change is: sum of(benefit change each human). If it goes up, it's good. If it goes down, you can't do it. I don't know how to handle the fact it's not exact science (and the expected outcome may not occur).

P.S. If's not clear already, I don't care about getting compensated in the traditional ways from my projects... I'll accept donations and such, but I won't prevent anyone from downloading/using my tools by forcing them to pay up front. At the same time, I'd love to get help working on stuff from like-minded people (if any exist).

Simple Programming Challenge

11 September 2012 - 01:33 AM

Is writing a quine just too easy for you? Then try your hand at the following simple programming challenge.

Write a short program that takes at least one hour of computational time (this can be a parameter if you want) to produce some interesting output. Pre-canned output is not interesting, nor does it take one hour to generate.

On Source Code, Design and Implementation

22 July 2012 - 06:20 PM

Today, the source code of a software project encodes *both* the design and the implementation of the app.

The design describes how the app looks, behaves and what it does (in theory).

The implementation is nothing more than a way of making the design a reality on a given platform. It uses known tools (CPU instructions arranged in a certain order, software libraries, programming languages, programming tools, etc.) to make the app real and working, rather than a design that is working only in someone's imagination.

Do you guys think it's a problem that source code encompasses both things? That they are inseparable, intertwined components?

I think so. Ideally, IMO, these two highly distinct concepts should be precisely that, distinct.

If I have a certain app that does something and looks a certain way, why should it matter what its implementation is? Why should it matter if I programmer A or programmer B wrote the implementation? Hell, the implementation might even be created by some sophisticated computer program.

The problem holding us back is... it's not easy. How do we represent design? Source code is a pretty good representation of implementation. But how do you represent design? It can reside in a designer's head, but that's not good enough. It can be scribbled on a piece of paper, or described in a lengthy design doc. But that's not good enough either, IMO. It has to be more dynamic, so that it can be linked up with a matching implementation and run on a computer/mobile device near you.

These are the right questions that we should be asking and trying to answer... IMO.