Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: DataFart - easy command line graphing (datafart.com)
114 points by paulrosenzweig on Dec 22, 2012 | hide | past | favorite | 63 comments



A cool tool with an unfortunate name. I'm not going to send a link to datafart.com/mygraph to someone with whom I only have a professional relationship.


Good point. I'd probably take a screenshot with Skitch and send that. Then it would last longer than 10 minutes too.


This wasn't really intended to share graphs. In addition to the name, each graph is deleted after 10 minutes.


A neat utility. The short-lived nature of the graphs doesn't bother me at all.

But with that name I couldn't even recommend it to a number of people I can think of in my professional circle.


Well, then those people have no sense of humor. When people don't have any sense of humor, I'd rather not work with them.

So I'm not seeing any problem here.


I dunno -- most who know me would say I have a sense of humor, but that doesn't mean I think the word "fart" is funny in and of itself, or expect anyone around me to either, beyond my 3-year-old.

I'm also occasionally aware of how others build their concept of me. If someone had known me for years and I recommended this service, I can't imagine it would make any difference.

If we'd had only incidental interactions, this could easily remain the first thing that pops into their head when they think of me in the future. I worked once in the same company as a talented designer who told a hilarious but quite scatalogical story at lunch one day. That's still the main thing that pops into my head when I think of him. I don't know that it'd stop me from recommending or hiring him, but it remains a significant part of how he's defined in my head.

I'm not sure if this makes me seem like a wet blanket, or overparanoid -- my real point is that I have quite a few different filters, and for most parts of my professional life "fart" doesn't make it past at all.


>So I'm not seeing any problem here.

I suppose if the target audience of this application is "st0p", then you'd be correct. The rest of us don't necessarily get the luxury of choosing what sort of sense of humor our employers have.


Hmmmm. Dunno. If you have baisc experience and a proper grasp of programming and live in the westeren world, you might not know beforehand if an employer had humor, but you can still choose your employer.


If by "basic experience of programming", you mean 10+ years of experience or a Stanford/MIT/Berkeley degree, and by "western world" you mean Silicon Valley (and a few other very select areas, all of them within the US), yeah, I agree.

Outside that, the number of decent opportunities you'll get as a developer will be too low for you to be picky.


There's a world of difference between having no sense of humor, and simply not sharing your sense of humor.


Not all of us can be so selective with people we work with.


Why not?


You're being facile.

"Why not?" Because, for example, if you decide you really want to work with frickin' lasers, that may be more important to you than working at a place where clowns are appreciated in all their glory.


That's like suggesting someone is illiterate because they no longer care to read books written for small children. Of course, if that's all you're capable of reading, those people must seem pretty stupid.


Dont' confuse sense of humor with being keen on laughing at brown jokes. Humor for a grown-up person, in an abstract situation (like with professional colleagues) is very difficult to attain.

You can perfectly be unpolite trying to be humorous with this kind of joke.

The easy joke is not necessarily polite and is usually unintelligent: so it is a way of telling the other part "look, laugh at this silly thing" when actually one ought to be able to say "look, laugh at this intelligent joke".


The name immediately made me think of German. I checked, and DatenFahrt.com is still available.


That actually makes sense in German, it means something like "data ride".

But as I saw it first I didn't notice the similarity to the German words. I somehow thought it's a reference to South Park ;)


just pronounce it "dataf-art"


The web dependency situation is absurd. Am I unreasonable for wanting a locally-installed program that produces a standalone window all by itself?


I don't really understand this criticism. It's perfectly reasonable to want to install, for example, gnuplot to be able to do plots without depending on a networked service. But this is neat, and could be convenient if you're on a machine without plotting software installed. He didn't take away your gnuplot by creating this, so really, what's the problem? (On another note, for these types of graphs the gnuplot command is "plot", so I don't see why the author has trouble remembering that.)


The web dependency is awesome. It makes it that much easier to share the chart with others. Since you're probably on the internet at all times, what exactly is the detractor here?


I'm now storing my data on someone else's servers, and they promised to remove it after 10 minutes. Not good for sharing. And if the site is down...I'm out of luck.

Edit: And there's not even a straightforward way of saving the graph...it's not a real image. Do I save it as a webpage? That's inconvenient for embedding it elsewhere. Do I screenshot it? That's cumbersome...


Not unreasonable at all. Here you go:

http://github.com/dkogan/feedgnuplot


Looks great, thank you!


No man, you're not unreasonable at all. I think the winner over the next 30 years will be a happy consolidation of web and local storage, let's hope HTML5 get's it right.


like gnuplot?


Or the following python script:

    import pandas
    from pylab import *

    d = pandas.read_csv(sys.argv[1])
    plot(d[d.columns[0]], d[d.columns[1]])
    xlabel(d.columns[0])
    xlabel(d.columns[1])
    show()
That'll just pop up a window displaying the graph. With 2-3 extra lines of code and more than 30 seconds of effort, I'm sure it would be easy to upload to imgur.

Example output: http://i.imgur.com/m7ooj.png


Assuming you have matplotlib installed.

I have definitely wasted an hour in vain trying to install that correctly on an old Mac mini.


The SciPy Superpack will save you many hours of trouble in the future then. (SciPy, NumPy, MatplotLib etc)

https://github.com/fonnesbeck/ScipySuperpack


words cannot describe how much I hate matplotlib


I, on the other hand, totally love matplotlib


Maybe some anecodtes? Alternatives (for Python)? Would like to generate D3 style charts, without leaving Python for JS.


tell me you find any. I use matplotlib as I have not found an alternative.


Super picky FYI: there's no connection to GNU, so it's "gnuplot", not "GNU Plot". (FAQ entry: http://www.gnuplot.info/faq/faq.html#SECTION0003200000000000...)


Thanks! I assumed it was part of GNU. I made the change, but the page is cached, so it might take a while to update.


Don't know if I have a use case for datafart, but it did point me to a new d3 wrapper I hadn't yet heard of

http://nvd3.org/

Will have to play around with it...still trying to find that perfect line between lightweight and convenient


There was recent discussion on HN when the company tried to revoke its ggpl license, but then renegged.


You could also do this without a server at all. You could just have a script put your data into the html/js template and open up the page with something like bcat.

http://rtomayko.github.com/bcat/


Isn't the point not having to worry about presentation and messing the templates? Perhaps I just don't have your command line fu but I don't see how I could do what you are talking about in a single line/simply.


That's pretty awesome. I hadn't seen it before. DataFart has the one advantage that you don't need to pipe the data in locally. If the source data is on your local machine, this is a much better solution.


Plenty of downvotes coming my way, but: good job sir, on that startup name.


The notion that it's the name of his startup is pretty hilarious, but I think it's just a name for a command line tool


What an outrageous name for a command line graphing tool. I'm honestly curious, why?


This would be even better if it supported dates. In my day job I'm struggling to find tools for plotting time-based data nicely and efficiently. Splunk works, but only if you have that.


HighCharts (http://www.highcharts.com) handles dates pretty well.


Seconded. I'm able to plot thousands of date-tagged points with good responsiveness to zooms, and per-point popups-on-mouseover showing more information about each point.


Gnuplot?


Related idea: Python library that would render graph in Node.js using D3/NVD3 generating an SVG.

Is there any such thing?


Well, there is a python library that will render nice graphs on your computer in a variety of formats (on the screen, as a png/jpg/svg, etc).

http://matplotlib.org/

I'm not sure what rendering it in Node.js/D3 buys you on top of that.


Dunno, maybe you could make the transition from static file to interactive interface more easily? Or maybe I just find those graphs much better looking.



Why don’t you use a format like CSV?


That's a good idea. My immediate use case only involved whitespace delimited data, but I might as well just scan each line for numbers.


I don't have any output. No url is returned. :( Idea sound pretty cool, I'd use it.


Make sure your numbers are space separated rather than comma separated, you could pipe your data through sed like..

cat myfile.csv | sed 's/,/ /g' | curl --data-binary @- datafart.com


You don't need cat:

    <myfile.csv sed 's/,/ /g' | ...


sed 's/,/ /g' myfile.csv | ... works as well


Awesome! I love how cheeky this is. The installation instructions are sweet.


This is awesome. Thanks!


It's great. I wanted this literally two days ago.


how does the alias work? Are you routing the data from the shell to a certain api end point?


The alias employs curl to send data to the server hosted at datafart.com. The parameter @- supplied to curl means, send the data on stdin as the body of the request. So the user, via the alias, sending data to the server where it is processed, and the curl response is a URL to the temporary location of a viewable plot.


What?? No!! You should always have option to fart silently.

one https, and one make-private-ability please! :P

Nice project.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: