Ask HN: What are you working on (hacking)?
Bonus points for keeping it under a tweet + demo (or github,etc).
Bonus points for keeping it under a tweet + demo (or github,etc).
PiCloud (http://www.picloud.com) is not a web hosting service. Rather, it is a highly scalable compute service.
(In other words, you can't host a website on PiCloud. But your site can run all of its background tasks on PiCloud).
I hear people asking for a Django-equivalent of Heroku. You definitely have a market for this.
An early alpha version will be available in a week or two. If you're interested in helping test it, shoot me an email: matthew.h.mazur@gmail.com or leave a comment below.
The real payoff has been that in the process I've learned all sorts of things: about Python, data mining, working with large datasets, machine learning...
Keep in mind that I didn't really have any success:
There seem to be two main ML packages, Weka and Orange. I personally preferred Orange, it has a nice graph-based UI for linking various components together; when you've figured that out it can script in Python. Also Orange makes it easy to test your data set against various different learning systems, and compare the performance. Standard testing procedures like n-fold cross-validation are built-in and really simple to use.
Also you need data. I'm pretty sure more is always better. I actually started with greyhounds* and skimmed mine (in Python use BeautifulSoup) from a website. I tried to come up with various statistics about the recent performance of the dogs. Unfortunately nothing I tried made the ML algorithms predict better than a random choice. A friend who's into gambling suggested greyhound racing was quite random by nature, so I've switched to horses recently. I'm still building that dataset, now trying out MongoDB just for fun.
I think the trouble is that you can have as much raw data as you like, but generating the predictive statistics requires a lot of knowledge of the problem domain. I'm not actually into gambling at all so I don't know if the track conditions are important, how much breeding or the age of the animal really matters etc... This made it hard to pick likely stats (and rebuilding datasets and retraining learners can take some time).
For horses there's a lot more information in forums and racing guides etc, so I'd start with horses. Just make sure you've tested your predictions with pretend bets before you commit any real money :)
Good luck!
*I began with greyhounds because of a dissertation posted on reddit where the authors suggested they'd had some success with a neural network and gave quite a lot of detail. That piqued my curiosity, and my initial version just re-implemented their work.
EDITED: For clarity
Yeah I hated using weka at uni. I'll look into Orange.
"I don't know if the track conditions are important, how much breeding or the age of the animal really matters etc."
Yeah, feature selection is a tough one. I'd thought that the system would pick up on good indicators by itself, but it might well be that that has to be a manual decision.
"Just make sure you've tested your predictions with pretend bets before you commit any real money"
haha, yeah absolutely. My plan was to train/test until the accuracy seemed good enough (using monte carlo) and then run the system on live data with pretend money for a few months to see what the actual performance is like, before actually investing real cash.
Do you have a link to the greyhound topic? I searched on google but couldn't find it.
For example, I assume that a dogs past performance must be some indicator of its chances in the next race, but how do I account for the chances of dogs who didn't complete their last race? What weighting is the last race worth, compared to the ones before (perhaps it had a bad race, but on the whole is running well).
I just don't know how to optimise for those sort of things. I have a rough idea that some combination of genetic programming and GA could help - it would be an interesting challenge to builds software that knew how to apply a selection of mathematical functions to my data, and then breed the results like a GA. But it's tricky, I'd have thought.
I've been treating the ML classifiers and learners as something of a black box, perhaps a more rigorous approach is required.
yeah, I'd envisaged using the accuracy of the neural net as the fitness function for a GA that mutates input parameters. It's another layer of complexity, and I've no clue how you'd start, but it seems like it would work.
In other words - use a GA to select features, using how well the NN trained on that set of features performs as the fitness function.
One of my long-standing projects is predicting soccer bets.
Why did re-implementing the dissertation for greyhounds not work? Was the dissertation flawed?
If you're putting this much effort into it, why not stop by a horse racing track a few times and pick up some domain knowledge? Maybe you could even talk to race horse owners, jockeys, breeders?
I wonder if you could turn this into a product for breeders? Or maybe for people buying/selling race horses? Or people hiring Jockeys, or even marketing an offshoot of this to the gamblers? Just some wild thoughts.
A declarative framework for Perl that lets you set up complex data structures and code in an easy-to-read format.
A complete working example GUI program, using a not-yet-published set of semantic classes:
use Class::Declarative qw(Wx::Declarative);
dialog (xsize=250, ysize=110) "Wx::Declarative dialog sample"
field celsius (size=100, x=20, y=20) "0"
button celsius (x=130, y=20) "Celsius" { $^fahrenheit = ($^celsius / 100.0) * 180 + 32; }
field fahrenheit (size=100, x=20, y=50) "32"
button fahrenheit (x=130, y=50) "Fahrenheit" { $^celsius = (($^fahrenheit - 32) / 180.0) * 100; }Will you marry me?
window @MyBigWindow "My Big Window" {
menuBar {
menu "File" {
menuItem @New "New"
menuItem @Open "Open..."
menuItem @Save "Save"
menuItem @Exit "Exit"
}
menu "Edit" {
menuItem @Copy "Copy"
menuItem @Cut "Cut"
menuItem @Paste "Paste"
}
}
rowLayout {
button "Button 1"
button "Button 2"
button "Button 3"
}
}
Laying out GUI components was done with the rowLayout, colLayout and table containers. The subclass would contain code to be executed for @New, @Open, @Save, etc.I've got big plans, and since it's not expected to pay any bills for a while, I can afford to think things through sufficiently. I just hope I won't drop it entirely.
It's been fun so far, though.
Absolutely. Having sensible and configurable defaults for everything is the way to go.
A programming language where syntax and semantics are manipulable at run-time as well as compile-time and where you can define grammars in-line and use them immediately. I also intend to integrate the concepts of pattern calculus - http://lambda-the-ultimate.org/node/3695 - to permit extreme levels of flexibility in the language.
It's a huge project and I'm right at the start of it. But no matter how hard I try I can't get away from the desire to work on language design and compiler development. It's just my thing, and the wonderful thing about hacking is you can just do it :-)
I've been playing with making the implementation of arc more timeless (e.g. http://arclanguage.org/item?id=12057, http://arclanguage.org/item?id=11864)
After a while I gave up, maybe I am simply not a good enough coder to understand how Racket namespaces work, but either way I worried that if this one aspect of the language is extremely difficult, what else am I going to uncover in the course of the project? On that basis I decided it'd be wise to switch.
Initially I was going to switch to C for portability as I am also working on a parser generator, singular[2], which I thought could be useful to people even before I write it in Terse (I intend to self-host and bring singular into that too), however I worried that the many pitfalls that C brings to the party, e.g. the ease of segfaulting, null pointers, etc. and its lack of abstractions would overly slow me down, so I thought Go would be a better option, especially as it seemed tastefully designed.
My experience of Go so far is one of great admiration and enjoyment, it really is a lovely language, nicely low-level and low-key yet still providing many useful abstractions including proper interfaces, i.e. by implementing the methods of an interface you can treat it as that interface without having to explicitly inherit from it.
To be honest my decision to switch to Go is probably not that defensible as not many people are using it so the initial reason (portability) for switching to a lower-level language is less of an excuse now, so if I'm being honest I have to admit that I wanted a fast language that played nice with Linux (not that Racket wasn't either of these), and I wanted to play with Go, which kinda overrode other considerations.
Most recently I've been very interested in implementing [pattern calculus][3] in the language somehow, as it provides enormous flexibility and offers a formal underpinning to a more fundamental means of expressing abstractions than oo, functional, etc. - in fact my ambition is to have an abstraction which can encompass these paradigms in itself if you want, i.e. you can implement oo or functional or whatever you want. Obviously I am very inspired by lisp in this and many other regards.
The main thing is getting stuff done, this idea has been floating around in my mind for at least a couple years and I've changed my mind about things many times (and will carry on of course when necessary) causing me to throw away work more than once, so obviously I am somewhat focused on actually writing code and getting closer to actually having something rather than just the idea.
Luckily I am pretty damn certain about the core ideas in the language (flexible syntax, the use of pattern calculus, etc.) so that looks to be quite likely.
Anyway, it's really early days, but I am utterly committed to getting this done as I want the language for myself, want it to not be a toy language, and want it to actually do these things I think would be awesome, even if (as is most likely as with any personal language project) no one else uses it :-)
I know I'm digressing from your question, but have to say that I really think one of the most wonderful aspects of programming is the ability to just hack on stuff, no matter how crazy, with just a cheap computer, some coffee and a willingness to put in the time. So glad I was born in a time where that was possible.
[1]:http://www.codegrunt.co.uk/2010/06/28/Racket-Namespaces-Suck...
(email in profile)
I'm targeting the custom essay - services like http://essaymill.com ("our writing, your success"), as well as students paying other students to write their papers.
I intend to make it very clear to customers that they should not punish students based only on information provided by my software.
That's true.
If an algorithm flags someone as a possible cheat multiple times, it may be worth inspecting that person further.
> I intend to make it very clear to customers that they should not punish students based only on information provided by my software.
Good idea. Customers should however publicise that anti-cheating software is in use.
In one sentence: Get your Google Analytics data straight to your inbox.
Build as part of my dissertation. Build on Google App Engine.
To me the "best" setup would be to avoid the PDF and get the report directly in my mailbox. I know that would require unique graphics for each email, but is that the only barrier from going with that approach?
:)
When I arrived at your site I was really quite confused as to what the hell soundkey did. The main part of the site shows a big list of social networks, and says "use soundkey here" ... Ok... but what exactly does soundkey do?
I would focus more on the aspect that you can record sounds and then link to them (or embed them). It's really that simple, but you've managed to overcomplicate it and it took me way longer than it should have to figure out the following: Soundkey lets me record a sound, then link to it.
My suggestion: put the record tool right smack in the middle of the front page. Make it the primary purpose of the site. That is, I should be able to go to "soundkey.com" and conveniently record and share a sound, rather than seeing a splash page. You don't visit bit.ly and see a whole page explaining the benefits of short links, and where you can use shorter links. You see a textbox that you can immediately use.
At any rate, this all might sound very critical, but I love your idea. Put that recording thing front and center, emphasize "record sounds and share them" [twitter for sounds], and your users will figure out the rest.
We are currently working with a UX expert to help us re-design the look & feel and the functionality of the website, and the issues you bring up have been brought to our attention and will be addressed in the next iteration of the website.
(We currently do have a "How this Works" section on the front page that says "Record Sound, Get SoundKey, Use Anywhere" with an explanation of what that means, but I guess it's not clear enough because lots of people complain about it. Hopefully the updated website will make things much more clear in much less time)
Particularly useful in developing regions with no Twilio/Textmarks/etc and strong need for SMS apps.
* Looking for beta testers * (anywhere in the world...)
http://webchiever.com/ - Web achievements
http://inquiryapp.com/ - Hosted FAQs for your apps
Here's my contribution: http://madlibber.com/madlibs/21
Update: I just created an account with inqueryapp -- I cannot add a category. The AJAX response is a 500, you might want to check that out. Up to that, the experience was rather enjoyable and I was really looking forward to creating a FAQ page using your service.
Weird, I can't reproduce that inquiry error and Hoptoad didn't catch anything. Let me know if you run into that again.
Thanks for your feedback and contribution!
I'm also working on my first iPad app.
I used to not want to leave my desk for lunch because I'd need to come back if the market moved. I wrote a script that would tell me if the market moved past a certain threshold and would text me to come back.
I was sort of shocked that it didn't exist in the wild (or at least wasn't easy to find) so I decided to see if I could make a web app of it.
Hoping to "launch" in the next 2 weeks. Would love testers.
I know it's stupid but I can't stop working on it. Apparently my 7 year old mind finds it hilarious.
The main idea behind ShowMe is "viewability", by which I mean that every object in a running ShowMe program can be navigated and displayed (and potentially altered) in a Viewer. By object I mean every entity within the system; ShowMe will be a pure object-oriented language.
There will be multiple Views, so the user can view the same data in multiple ways (for for example a table of numbers could be displayed as ascii text, or as an HTML table or as a graph). One of the views will be a low-level ascii string, from which the object can be re-created; this format can therefore be used for serialisation. User-defined classes will be able to define their own views, or re-implement existing views for the new class.
Like Clojure, a lot of data structures in ShowMe will be immutable.
ShowMe will not be a pure functional language, but it will be possible to program in it in a functional style.
There will be 2 syntaxes for writing ShowMe programs: one based on Lisp, the other similar to C. The C-like syntax will be compiled into the Lisp-like syntax.
The idea is to give small to mid size businesses a tool to generate geographically and/or category based well targeted mailing list for their marketing campaign.
Mailing list are generally huge files pretty much unusable by a small business owner with a constant contact account, we are looking to change that.
After hours...working on features toward the launch of http://www.wanderphiles.com (teaser site...sign up!). So much to do and only a couple hours a day to work on it.
One topic a day, one pic per day.
It is actually inspired by HackerNews particularly threads like this and 'Review my app/startup'.
I have several HN guys on the site. If you are interested in being one of the early users, email me at hackernews -at- launchset.com.
Review is down right now, so you may not be able to get a look.
Because there just isn't enough shady intrigue on the web!
Eventually this will lead to integrating pyjamas as an alternative to templating for pure-AJAX applications. This will mean adding a setuptools plugin for compiling the pyjamas client before packaging the application, creating a paster template for generating the project structure, and extending the test framework to support functional tests.
It might mean creating yet another framework built on pylons, but I'm hoping it will get folded into Pylons proper so that I don't have to maintain a separate project.
... I and a few of my friends miss the old days so we'll probably be the only ones to make reasonable use of it, but it's a fun hack project for me and I'm learning a lot about SSH in the process. It's not OpenTG and I'm not that developer (he's doing one in Ruby so his project is probably more interesting to folks around here). Still in the very early stages so nothing works yet and I don't have a code repo setup.
It will be a software product sold for a one-time fee and will be compatible with pretty much any environment that has PHP. The syntax will be based on the cross-wiki WikiCreole standard, but it will also support WYSIWYG. We have some great ideas and are gathering feedback from people who are interested in wikis or an easy way to store their information.
Just a small extension of a little iPhone app I made for myself. Realized that most of my 'todo lists' are more like checklists... for launching a new site, compiling a distribution build of an iPhone app, etc. So I have a little app for myself that let's me quickly re-use these checklists.
So now I'm building in a web based back end to allow everyone to share their checklists for other people to use.
It would be a good place to store, and use, the 100's of different checklists i've seen on blogs, hackernews, etc.
Should add that I am looking for a cofounder so post/msg if interested.
Edit: E-mail is jeff.tchang (at) gmail
The idea is a data aggregation service that helps small to medium online businesses analyze common sources of ecommerce data.
Most small businesses do not have the time or manpower to implement complex business intelligence solutions such as SAP, Cognos, or Actuate (the big players in this space).
My product serves to bridge this gap by providing an easy way to gather both traditional and non-traditional metrics. By traditional I mean gross sales, volume, margins, site traffic etc. Non traditional would be a lot of the "Web 2.0" metrics (tweets, buzz, etc).
I'm at a point right now where a proof of concept is built but I need a lot of help in the marketing/business development department.
Other than that I've been slowly putting together a site about bad dates for a friend of mine, maybe someone here will enjoy it enough to add a story ;) http://www.runawayscreaming.com
Also playing with the idea of using Google Docs as ad-hoc CMS for simple client projects.
Also a project in the early stages which aims to make it easy to find great available domain names for projects/startups. A lot of hackery going on here. :)
http://github.com/sonnym/csmsadmin
Runs on IIS >= 5, and Mono on Apache. It does most of what I have needed for daily tasks, so it has been some time since I have worked on it; should probably get back to it in the near future . . .
Anyone knows a better pdf renderer that works well with java ?
It's Python and all command-line. I'm trying to make something that's both better than iTunes for managing music (not that hard) and smarter than MusicBrainz Picard for correcting tags (a little harder).
I'm still not sure how to locate potential customers or how much to charge. Any advice on that?
I'm working hard to get the website and api ready for Private Beta. Tomorrow I'm coding the final api feature and more functional test cases to iron out problems with unicode filenames.
The past week I have been working on a back end tool to fully automate the creation of the newsletter (the selection of content is done by me). It has been fun working with the MailChimp API.
NotaryCRM: simple software for mobile notaries (notarycrm.com)
Started yesterday, want to finish it tonight.
- something similar to timothy sykes' timalerts, with iphone/androoid email/sms option. much coding need to get data out to these platform.
- my trading algorithm for forex and stock. working to translate all these algorithms to codes.
Hoping to build a freemium model out of it for image libraries to use. Happy to speak to anyone with any kind of CV / object detection knowhow.
At the moment I can return colour names and faces.
Example:
input: http://cm1.theinsider.com/media/0/91/63/mini-kim-kardashian-...
output: face, yellow, blue, black.
So just colours and faces at the moment. You're right that arbitrary images are ridiculously complicated, I'm hoping to start off on a smaller domain and build up :)
(edit: obviously I can return the coords of the face too, as well as coords of empty parts of the image etc, but tagging is really what I'm focusing on at the moment)
edit: which doesn't seem like it'll be too difficult. On their developer test I just get {"data": {"error": 0}} back for any image I try to upload.
Sadly, no preview available yet, but the app should be out in a few weeks.
Also, it will be free.
A little bit of messing around with Android SDK too...
If anyone is interested in a technical intro to the setting there is a set of slides from John Langford at Yahoo Research (many good and standard reference papers cited in it): http://hunch.net/~exploration_learning/
A/B testing could be thought of as a sort of epsilon-Greedy strategy (particularly if such testing is carried out at regular intervals initially). While not enjoying the optimality characteristics of other algorithms, such an approach can in fact outperform in many practical cases :)
Here is a sample low quality upload, working on getting somewhere cheap to host 1080p: http://www.youtube.com/watch?v=gT7CrlzVeCs
Beta testers welcome!
I needed a pretext to play with localStorage.
Working on hackers white pages, events, jobs, consulting, startups database and stuff like that.
A lightweight systems management tool that uses XMPP for transport and is written in C++.
More information:
- http://www.facebook.com/wrpme
- http://www.twitter.com/wrpme
I've released two packages to play with one for Windows 64 and one for FreeBSD 8.x 64. More to come.
It should be up and running now.
async-mysql - asynchronous mysql driver for ruby (native - no c extension) http://github.com/chrismoos/async-mysql
moostrax.com - gps tracking (just released iphone app...working on new version)
You can use base64 if you're happy with case sensitive URLs.