hacker news with inline top comments    .. more ..    14 Feb 2014 Ask
home   ask   best   5 years ago   
Show HN: Wagtail, our new Django CMS
143 points by tomd  15 hours ago   86 comments top 29
waterside81 14 hours ago 1 reply      
I did the whole vagrant setup demo thing - this CMS looks unbelievably nice. Kudos to the design team. Stock Django admin (even with Grappelli) is kinda ugly now.

Like others mentioned, a live demo is definitely preferable - not many will go through the vagrant setup.

Also there's a bug when trying to view a sample page:

'embed_filters' is not a valid tag library

But good stuff otherwise!

rikkus 14 hours ago 1 reply      
So, were you hired to make a site for the RCA and decided to build a CMS first? I'm interested in how this came about.
yaph 15 hours ago 1 reply      
The first thing I look for on a marketing site for a CMS is the link to the demo, which isn't there.

Generally, I think demo videos don't fill this void and this one does a particularly bad job, unless maybe played at half speed.

Apart from that, Wagtail looks very interesting and I'll take the time and install the demo app. Thumbs up for choosing Postgres and integrating CoffeeScript and LESS.

jordn 13 hours ago 1 reply      
Congrats on open sourcing this. It looks great! I'm very pleased to see a Django app where the design hasn't come as an afterthought.

I'm just about to test it out but I have a question how easy is it to to integrate this into an existing project?

Ricapar 12 hours ago 1 reply      
Quick tip on the video: I felt it moved a little too quickly. I tried keeping up with the text, and it seemed to get pulled away from me as I was about 2/3rds through each time. At the end I was slightly dizzy :/
gizzlon 12 hours ago 0 replies      
Anyone got a working dockerfile for the demo? Took a stab at it, but it doesn't work :(



slater 11 hours ago 1 reply      
Really nice. One question:

One feature I always wanted implemented in whatever CMS I was using was the ability to enter, say, a comma-delimited list of page titles, select the parent page and template to use, and have the CMS generate those pages in one go, instead of having the content editors hit the "New page" button fifty times.

I used to work for a large medical company, and they're departments always had special requirements, with lists of sub-pages to create for their department. Three hours later (it was a Java-applet-based CMS :( ), I was just about done with creating their pages.

SEJeff 11 hours ago 1 reply      
Would you gents (upstream wagtail guys) be interested if I took a shot at integrating pelican into this? I'd like a static blog and semi dynamic site and <3 django.
antihero 13 hours ago 1 reply      
What's API support like? IE if I wanted to create a search widget that uses JSON. Have you considered something like Django REST Framework?
andybak 13 hours ago 1 reply      
Are there any developer docs? How extensible is it? How we do integrate 3rd party apps into the wagtail admin?
yen223 14 hours ago 1 reply      
Python 2 or 3?
acd 13 hours ago 1 reply      
Very nice! Thanks for the good work! Will check it out.

Feedback: I hope for some good documentation like a starter tutorial and video screencast so more people can understand your CMS and use it.

dangayle 10 hours ago 0 replies      
Thanks for the hard work. We need more CMSs in Python!
felipebueno 12 hours ago 1 reply      
Wow, this is really beautiful. Just in time for my next project: a tiny ERP to manage my sister's bakery.

Thanks for open sourcing this. :)

ereckers 9 hours ago 0 replies      
After watching your marketing video I now know why I don't get much done. You guys work fast.
eknuth 5 hours ago 1 reply      
Nice! I was just reevaluating the django cms world and happened to stumble on this post.

Any support for multiple languages, yet?

djm_ 15 hours ago 1 reply      
Nice presentation on the marketing side.

Is there a live demo anywhere or plans for one? In particular to try out the admin functionality.

Cynddl 14 hours ago 1 reply      
Seems really good! Are you planning to compare it with other CMS (especially Django-CMS)? I would like to see its performances (with or without varnish).

Would you like to add OAuth support or other auth mechanisms like CAS? =) I didn't find documentation for the "WAGTAIL_PASSWORD_MANAGEMENT_ENABLED" option.

humanfromearth 13 hours ago 2 replies      
Looks great. One thing that I find not so good is: There are no tests.

It would be hard to convince anyone to contribute without some unit tests.

kkl232 7 hours ago 0 replies      
Really excited for a CMS that takes the writing experience into account
ewebbuddy 13 hours ago 1 reply      
Looks really nice.. I can't wait to pull and try it out. Just out of curiosity: Is the marketing site also built using Wagtail??
bencollier49 15 hours ago 1 reply      
Brilliant name! Good work chaps!
adamlj 12 hours ago 1 reply      
Does it support handling multiple sites? If not, do you have any plans for adding multi site feature?
guptankur 14 hours ago 1 reply      
Why is npm listed as dependency ? Just curious. Congrats on this, it looks awesome.
leo_santagada 11 hours ago 1 reply      
Does it support content in two languages?
abhimskywalker 12 hours ago 0 replies      
Just tested out the demo site on local machine. The admin pages look gorgeous!!!Great work!
dandigangi 13 hours ago 2 replies      
Frameworks on frameworks on frameworks.
jlafon 14 hours ago 2 replies      
This looks interesting, but I can't take it seriously. From what I can tell, you haven't written any tests at all.
Bitcoin stolen while laptop was in Apple store
26 points by golubevpavel  10 hours ago   28 comments top 6
patio11 10 hours ago 1 reply      
Speak to an attorney. You may have signed something which waives all claims, but even if you don't have a prayer of winning in a court, at the very least an attorney is going to pester the heck out of Apple rather than waiting around by the phone for them to make it their problem.
d0 10 hours ago 4 replies      
Moral of the story: don't deal with the Apple Store. The amount of people I know who have had their data trashed (after possibly being cloned) is quite high. The solution to most problems is wipe the machine. They usually come to me after telling them to fuck off. I haven't had to destroy a single machine yet.

We're talking trivial shit like an HP printer driver thrashing the CPU or corrupt mail folders.

Seriously, 11 people so far and I don't repair Macs for a living.

I wouldn't trust them with an etch-a-sketch.

Also treat your computer like a credit card. If it goes out of sight, you're fucked, encrypted or not. FileVault and BitLocker are faulty by design.

nppc 10 hours ago 0 replies      
Moral of the story - do not leave your money with others if you want it back.
ef47d35620c1 9 hours ago 2 replies      
Sorry to hear about your loss. I hope they catch the thief.

Another very good reason to encrypt your hard drive is to prevent others from placing data on it. If they can access the drive, their motive may be to frame you by placing illegal files on your drive rather than simply taking your files.

Think about it.

gesman 7 hours ago 0 replies      
Some underpaid employees do like to take matters in their own hands.
melomac 3 hours ago 1 reply      
Might be a good time to backup your drive before logs are rotated... At the time of your writting, you only have kernel.log as a boot time clue, and it will self erase.
Ask HN. Why the $150+ Bitcoin exchange spreads?
2 points by dpanah  1 hour ago   1 comment top
t0 1 hour ago 0 replies      
Mtgox and Bitstamp suspended withdrawals due to a vulnerability. People have to sell in order to withdraw funds.
Customers are scared to buy online. What can convince them? Suggestions?
4 points by citadelgrad  5 hours ago   4 comments top 4
patmcc 4 hours ago 0 replies      
I don't people are scared to buy online, for the most part. They'll give their cc to amazon.com, or target.com, or walmart.com, or whoever. They're scared to give their cc to a new and untrusted merchant online, and with good reason. This is why paypal has the success they do - I don't have to trust you anymore, I can trust them.

Guess what? There are online merchants that store credit card information in plain text, have no access control, and any employee could walk off with them. You have to convince customers you aren't one of the ones who does that.

gsharma 4 hours ago 0 replies      
Unfortunately, not too many buyers read things long pieces of text.

Usually things like SSL (the lock in the browser from a user's perspective), trusted seals from well known companies and logos from trusted brands (Visa, Mastercard, etc.) makes users feel a lot more secure than the description or details about the security.

Amazon's Sign In button has text "Sign in using our secure server." You might want to look at some of the leading companies for best practices to create a secure environment for the buyers.

tuber 5 hours ago 0 replies      
I'd steer clear of discussing the ways things can go wrong. Instead, reassure customers that your platform is trusted and secure. i.e., used by X, backed by Y, and built upon Z.
gesman 2 hours ago 0 replies      
It's like saying: "You should not be afraid the enter this dark door to get a free candy. Typically ..."

Better not to say anything and just sell great stuff...

Anyone in San Francisco looking for a co-founder?
3 points by JesseAldridge  5 hours ago   5 comments top 2
sharemywin 4 hours ago 1 reply      
you last idea is gamefly.com. not that you have to be first but you wold probably need more than just netflix for games.
Ask HN Are there any YC companies offering student internships this summer?
2 points by film42  3 hours ago   discuss
Ask HN Is there an open source feature gating manager?
2 points by tdowns  4 hours ago   discuss
Tell HN: Twitter blocking links to https://thedaywefightback.org/international/
17 points by buro9  21 hours ago   1 comment top
Peroni 20 hours ago 0 replies      
Looks like you're right - http://i.imgur.com/SLpT55V.png
Ask HN: What are your thoughts about 'Everyone Should Learn How To Code'?
5 points by frigg  8 hours ago   5 comments top 5
Ronsenshi 7 hours ago 0 replies      
I don't think that everyone should learn to code. That's pretty idealistic and far fetching idea. I can get behind "Everyone Should Understand Basics of Computer Behavior" or something like that (there's probably a proper phrase/name for that).

I'll explain it with following example:

You know how sometimes if you're "good with computers" your relatives or friends might ask you to help with some application? That's where "Understanding of Computer Behavior" helps. You don't have to know every single application - and you can't, but by knowing fundamentals of computer behavior you can deduce what you need to do to accomplish required task.

Maybe that's not even a separate ability, but good old logic?

gshubert17 5 hours ago 0 replies      
It's a nice shorthand for "everyone should learn to think algorithmically or procedurally". I think it would be easier to learn this kind of thinking while or after learning a specific programming language. And the best way to learn a programming language is to learn to program, or to code.
seannaM 5 hours ago 0 replies      
I think everyone should in the Heinlein "specialization is for insects" sense, along with sonnet writing/manure pitching etc.

I think everyone should spend more time making things they can love. If you think software is a thing you can love, then sure. I also understand a lot of people are too tired after working three shifts at minimum wage jobs to make things they love, and I think thats a problem.

I sometimes see "Everyone should learn to code" proposed as a solution to unemployment/decrease is skilled labor, but its not a very intelligent solution. The labor market only needs people who love coding. A large group of people who are doing it because they 'should' can't be supported by the current market.

majurg 6 hours ago 0 replies      
The saying "Everyone should learn how to write" is the same sort of thing. It would be great if more people were able to write well, but the reality is one must put in some effort to be effective at any skill.

Should everyone learn how to code? It would be nice/cool if everyone did, but it is probably not plausible.

codeonfire 7 hours ago 0 replies      
Everyone should try it in grade school to find out if it matches their natural interests and ability. We had logo in the 80s. Most kids were disinterested, but some were very interested and were identified early on.
We created our own GiftCode system for In-App-Purchase
2 points by satyajit  6 hours ago   1 comment top
satyajit 6 hours ago 0 replies      
I cannot reveal the (technical) details.

For app developers, promocodes are a wonderful thing for 1) customer service, 2) media outreach, 3) reaching out to app reviewers.Its painful when you switch from selling standalone app to In-App-Purchase, because Apple doesn't have promocodes. But we couldn't do without it, so we built it into the app.

Is it against Apple's Terms&Conditions? I don't know. Regardless, its #HackerPride!

Show HN: Teaching kids to code using the Raspberry Pi and JavaScript
3 points by joachimhs  8 hours ago   discuss
We need less Rails, Node.js, etc. and more systems research
3 points by jfe  8 hours ago   8 comments top 5
GrahamsNumber 2 hours ago 0 replies      
Do us a favor, and stop telling us what to do and do it yourself.
kmnc 7 hours ago 0 replies      
The trend toward keeping with what we have is often mistaken as zero progress when in reality it is more a trend towards massive evolution. If you can't look past the "iPhone app era" how do you expect new students to? Should all students be forced to have PhDs in AI/Distributed Computing/Quantum Mechanics?

The problem of kids leaving school wanting to write iPhone apps seems to have nothing to do with computing at all. It seems to have everything to do with "Get a career, make it rich, find a nice job, get married, have kids, retire", which for a large majority of the population is all that maters. So it isn't so much a computing problem as it is a societal problem. I imagine your rant could swap out a few words and be used as a rant against every single academic and industrial industry that exists today.

But, at the end of the day major companies with major dollars are building self driving cars, space ships, virtual reality. Oh and they are also buying companies that contain only talented people for millions of dollars to do research. The fact that the economic landscape is pumping out computing literate students seems to only be a good thing, regardless of their intentions.

And yeah, the web and most of its products still suck. But that has little to do with the technology. If you can't realize that then maybe you need to get a bit smarter.

Ronsenshi 8 hours ago 1 reply      
> and pursue fundamentally new ways of computing.

Do you have any examples or ideas regarding that new way of computing? I'm not even sure I understand that phrase.

Maybe you meant new way of interacting?

And why do you mention both backend technologies, phone apps and web itself? Those are entirely different things that may rely or interact with each other, but they are not the same.

toddan 7 hours ago 1 reply      
I think this is a natural path of software development. It is getting easier and easier every year to make software on the foundation built by smart engineers.

There still will be engineers that will do amazing things, but the problems the engineers will face will be harder and the problems programmers will face will be easier.

Just compare creating a blog with php year 2000 and creating a blog with rails 2014.

I believe that in a near future making most of the apps used by businesses will only be a matter of setting configurations. I know this is what people said in the 80s and we did not get there by 2000, but that dose not mean we will not be there in the future.

wmf 8 hours ago 1 reply      
Are you going to pay for it?
Ask HN: What is your favorite Linux distro and why?
11 points by user_235711  17 hours ago   19 comments top 16
brudgers 7 hours ago 0 replies      
Not that it's particularly rational, but I like Wary Puppy 5.5 because I am running it on my Toshiba Satellite 1805-S203 with 384kb of RAM.

I bought it the month before 911. In 2004 it was stolen and pawned and I had to take the pawn broker to court to get it back. When we were still on 802.11b my son used it with Windows 2k (rather than its original ME) and a PCMCIA wireless card. In 2009, I replaced the voltage regulator for the screen with one from eBay. Then it sat dormant for a few years after the Wireless network was upgraded.

A couple of years ago, I tried installing Linux and paid the dumbtax when I reformatted the hard disk. Then recently I pulled it apart, stuck in the BroadCom daughter card and 40gig hard disk salvaged from another laptop and after more work than I care to admit got it up and running and productive again.

I've got Emacs and MITscheme for fun. Node runs too. There's SSH to the big box [CentOS 6.5] for anything else. What more could I want?

Well ok, a couple of 256meg SODIMS and a PCMCIA ethernet card would be nice.

monkey26 1 hour ago 0 replies      
Fedora for my desktop. It's cutting edge and has sane package naming. I've also been using RPM based distros since the origin RedHat 4.

CentOS on servers. Rock solid, long support.

I had an Ubuntu phase when it was first released. Even helped 2 companies standardize on it while moving developers off windows machines to Linux. But ditched it for personal use when Fedora 7 came out.

The only other distro that interests me is Arch. It's definitely the tweakers distro, and if I were younger and had more time to tinker with Linux I'd run it on my desktop.

I guess the main reason why is familiarity - 17 years with RPM based distros.

dhimes 8 hours ago 0 replies      
Laptop: Linux Mint 16. LM 8-12 were absolutely fantastic, everything worked (suspend, audio, video, mail, etc), and life was good. Went from 12 to 15, and things were a bit rockier. Suspend lost the X setting on waking, mail (evolution) borks a lot. Desperate for a better life, went to 16. Not great, but better. I use hibernate rather than suspend now, and evolution only occasionally fails (it's a keyring thing).

Netbook: Ubuntu LTS (12.10 I think). Thunderbird. Everything works (except, oddly, google chrome doesn't play video worth a crap- may be the old specs).

Servers: Debian Squeeze. Solid server distro.

bhaisaab 10 hours ago 1 reply      
Fedora Linux for Desktop - Great documentation, community and support. You get the greatest, latest and the most robust distro in terms of drivers and stability (I've tried Ubuntu, Debian, Arch, Manjaro) that requires very less sysadmin work (unlike Arch etc.).

Debian Linux for server (stable, tested).

Rant: Few years ago the state of yum based distros was very bad and at that time Ubuntu came and was instantly favoured. Right now rpm based distros are in much better shape and deserves a shot. About pkg-management -- I find apt clumsy for example you need to apt-cache search/list, but to install do apt-get install; I like yum (search/install etc. just one tool) and rpm a lot.

iends 15 hours ago 0 replies      
I just want linux that works without setup, so I use Ubuntu.
LarryMade2 13 hours ago 0 replies      
Ubuntu - Great package manager, best community support, and good flexibility. Don't like stock Ubuntu but with a few installs I can easily fix the desktop environment and other things I think are deficient.
collyw 13 hours ago 0 replies      

A user friendly version of Arch. It includes a graphic package manager - which seems to be discouraged by the main Arch distro looking at their wiki (they want you to learn and understand pacman). The fact is sometimes I want a graphical package manager to make searching easier and I don't know the exact name of the package I am looking for. Other times when I do know the details it is easier to use the command line. Having the choice is good.

MaybiusStrip 14 hours ago 0 replies      
Kubuntu -- Just works for me and I much prefer the KDE desktop. Have it set up on 3 completely different machines and it works great on all of them. I highly recommend everybody who uses Ubuntu and is looking for something different to at least try it out.
DanBC 11 hours ago 0 replies      
Arch - amazing documentation and user community. Enjoyable learning experience.

Linux from Scratch - I am a masochist

ParadigmComplex 14 hours ago 0 replies      
Bedrock Linux, as it gives me many of the advantages of other distros at the same time. Stability of Debian/CentOS, access to cutting-edge packages from Arch (including AUR), ability to have portage automatically compile things with my preferences from Gentoo, library compatibility with Ubuntu for things like steam, etc etc.

Note: Main area it is lacking is the "just works without setup"; it does not compete with Ubuntu/Mint/etc on that front.

Full disclosure: I'm the founder and lead developer.

ing33k 15 hours ago 0 replies      
Ubuntu - ( just works ).but I am exploring Arch these days and looks like I will like it more if I can stick to it for more time ..

Servers - Debian ( Stable, Secure, Well documented with good tutorials )

anaxag0ras 15 hours ago 1 reply      
Debian: rock solid stability
mknits 12 hours ago 0 replies      
Linux Mint. Simple, intutive and plays everything.
bediger4000 14 hours ago 0 replies      
Arch - all the cool new toys.
guiye 16 hours ago 1 reply      
elementaryos: simpler, light and nice look & feel
erlapso 16 hours ago 0 replies      
Ubuntu: best booting sound and packet manager
Ask HN: Encrypted UDP?
2 points by pjungwir  7 hours ago   9 comments top 4
ahazred8ta 5 hours ago 1 reply      
Variations on https://en.wikipedia.org/wiki/Secure_Real-time_Transport_Pro... - mainly used as ZRTP, or DTLS+SRTP, or SRTP with manual key setup.Related: port knocking utils use encrypted/authenticated UDP datagrams; there are secure chat / instant messenger libraries using UDP; VoIP uses secure UDP. a minimalist approach is http://www.the-control-freak.com/ClntSrvr/AES/AES.htm
kogir 6 hours ago 1 reply      
Just use IPsec, and then use UDP normally.
Bino 6 hours ago 1 reply      
DTLS is probably one of your best options. Protecting UDP is hard. It more or less requires you to implement "all" the features DTLS has (like sequence numbers). Depending on the application, one could argue that your protocol maybe shouldn't implements encryption (wouldn't be the first protocol not to do so). And it should be left to the user to protect the traffic in their network. In some sense it's better not to try (and be open about it) than to fail.
Ask HN: Best-looking Documentation pages?
5 points by Ronsenshi  11 hours ago   4 comments top 2
nmc 10 hours ago 0 replies      
A nice compilation of webdev documentation:


Ronsenshi 10 hours ago 2 replies      
In my opinion Stripe [1] has pretty awesome looking docs for API.

[1] https://stripe.com/docs/api/php#create_charge

Ask HN: Moving Beyond PHP for the Problem Solving Programmer
3 points by ChikkaChiChi  11 hours ago   3 comments top 3
gesman 2 hours ago 0 replies      
I been in exact same position recently.

PHP is the language allowing to craft something quick and crappy and making "it" to work on any platform it is easy to get lazy with this.

I found myself I stopped growing with PHP.

Quickie, interpreted languages for "hit and run" projects are not my stuff. Spiritually it is not mine.

I used to do lots of high performance, multithreaded, backend apps coding in C++ before. So I decided to switch to .NET / C# platform. Love it. It's secure, it's fast, it's enterprise supported, it's has the best development and deployment tools on the market, it's fully cloud ready.It's strongly typed (no RoR junk like: "cat ran on my keyword and I successfully deployed it to production" any more).

It's convoluted, it's overly complicated and it more and more poorly documented but I having fun with it. It gets the job done.

workhere-io 6 hours ago 0 replies      
Flask (http://flask.pocoo.org/) plus SQLAlchemy (http://www.sqlalchemy.org/) is a really good combination. I find that former PHP users often like Python's syntax.
ChikkaChiChi 11 hours ago 0 replies      
My current objections:

Python - GIL seems like a big deal for future concerns and Python 3 doesn't seem that much 'cleaner' to write than Golang.

Go - Really new, virtually everything available on Github is still alpha (e.g. Revel). Plus, is it really meant to be a CRUD-like web language?

NodeJS - Javascript everywhere would be nice if I never had to go back and modify my code, ever. Just really tough to grok after I've been away from something I wrote in the past.

Ask HN: What percentage of a software company's revenue should go to salaries?
2 points by aadilrazvi  10 hours ago   discuss
Ask HN: What's a good machine learning independent study project?
7 points by shakeel_mohamed  23 hours ago   5 comments top 4
patio11 22 hours ago 1 reply      
YMMV on this, but I studied CS with an informal concentration on AI/natural languages. Here's some take-them-or-leave-them suggestions.

If you want to maximize the return on your time for this class, do a project which:

1) Uses one or many data sources which are publicly available but which, ideally, are not quite as simple to access as straight downloading a CSV file. A bit of practical experience with scraping, API use, or data processing doesn't hurt. Bonus points if you get a taste for working with large data sets.

2) You will not make an AI which learns to play chess in 11 weeks, or in 11 years. Just to set expectations. A more reasonable task for the same timeframe given your current skillset is e.g. "Given a large corpus of documents and a small number of them are hand-tagged, explore a few different approaches for classifying the remainder of the documents." A motivated undergrad can succeed at implementing a Bayesian classifier, but you will not advance the state of the art on chess.

3) A lot of academic projects focus on toy problems, like e.g. chess or a contrived simplification of a real system. There is no reason that you have to adopt this academic convention: consider picking a real system with consequences. There exist many websites which have information on them that actually impact decisions which people care about -- wouldn't you rather learn to do analysis on that rather than pulling out arbitrary trivia out of e.g. the British national corpus (which, I rush to mention, is an excellent tool).

4) Think about the presentation layer for findings in more detail that the typical academic paper, which spits out a sentence or two of summary stats and maybe graphs them. This might be an opportunity to have a bit of fun doing, e.g., a website which lets you search through your (voluminous) findings.

Putting it all together, you could imagine something like "I have developed a website and/or Chrome plugin which, when pointed at an Etsy item, predicts the likelihood that it will sell. Or it predicts the likelihood that a KickStarter campaign will succeed. Or it predicts the final sale value of an eBay auction -- better in some categories than others, see page 6. Or it successfully paints a red/blue map of the United States using no prior knowledge other than a geolocation database and the Twitter stream. Or it asks you ten questions about seemingly irrelevant trivia and then makes a surprisingly accurate prediction on how long it has been since you ate sushi."

rfergie 13 hours ago 0 replies      
I'm doing some work for a small UK based charity.

I have several clustering/prediction problems in my pipeline at the moment.

Drop me a line (email in profile) if you are interested in having a crack at one of them. Should give you insight into all sorts of stuff apart from big data

Irishsteve 18 hours ago 0 replies      
Students in my place usually end up going through all the content in http://www.cs.waikato.ac.nz/ml/weka/book.html

In terms fo projects etc. there are about 4 or 5 assignments that range from spam detection, to parameter setting optimisation.

angersock 22 hours ago 0 replies      
Simple idea:

Given a post text or image, give the three boards it was most likely posted to on 4chan.

Data is easily available on the 4chan API, and you can do things from very simple (matching word frequencies) to complex (NLP and image recognition).


Bonus round--train it to generate posts for a given board.

Ask HN: Advice for a directionless developer
6 points by danjaouen  1 day ago   3 comments top 3
karterk 1 day ago 0 replies      
When you don't have a client, you should find a customer. It boils down to what your motivation is though. Not everybody wants to invest their time on a side project.. but if that's okay for you:

1. Pick a problem that you're passionate about and try to solve it in a better way. 2. Give it to a few people, ask them to tell you how to make it better. 3. Go back to step 1

Development isn't an end in itself. There are only so many books you can read - the real learning comes when you refer to a book/resource while you're trying product something tangible.

playing_colours 18 hours ago 0 replies      
I was in a similar situation. I read book after book, doing some small stuff. Now I switched from this book-first approach to problem-first. If you don't know what to choose, read articles, talk to people, books are too time-consuming, focused to start with. When you find an interesting problem (for me it's now reactive driver for Github in Scala, just started on it), you start coding, find appropriate books, other people solutions etc. I've found I learn way more and feel more engaged when I keep focusing on solving a problem.
CyberFonic 1 day ago 0 replies      
You could be suffering from burn-out. I have been there quite a few times. Not a pleasant time.

Assuming that you don't have a gig and don't really need one...

So why not take some time out? Do anything that doesn't require sitting in front of some electronic gadget. Personally, I take long walks, bike rides, etc. The more physical the better.

Then follow up Karterk's suggestion either find a project you are passionate about and really want to solve or find a customer.

How to find web development work in Europe as an American?
6 points by istorical  1 day ago   10 comments top 5
hcho 15 hours ago 1 reply      
You need to be more specific than "Europe". European countries have different rules and regulations when it comes to employing non-European people.

For GB, unless you have spouse with a EU citizenship, your chances are almost 0 at the moment.

tlubinski 1 day ago 1 reply      
I always recommend Berlin (Germany) as it is real fun to be and to work there (full disclosure: I'm German, and I lived in Berlin for 10 years). Start-ups there are usually used to employ people from different countries, which definitely helps. You might want to send your resume to one of the bigger incubators:

www.rocket-internet.de (they are huge!)www.project-a.com (former rocket internet managers)

or directly to one of the bigger players:- wooga.com (social gaming)- plinga.com (game publisher)- soundcloud.com- 6wunderkinder.com (to-do list app)- ...

Good luck!Thorsten

esw 1 day ago 0 replies      
Have you checked out the Dutch-American Friendship Treaty? (http://en.wikipedia.org/wiki/DAFT_%28treaty%29)

The requirements are pretty minimal for US entrepreneurs.

beat 1 day ago 0 replies      
Perhaps you could do remote freelancing while living in Europe? You could work for American companies (or European, or anywhere else).
basdevries 1 day ago 1 reply      
Why is it important to you to work in Europe per se? A lot of big companies like LinkedIn, FB, Google, etc. have offices all over the world and when you apply for a job at an American employer you could later ask to go abroad.
Ask HN: How do you test for browser compatibility?
2 points by _ix  14 hours ago   5 comments top 3
laxk 1 hour ago 0 replies      
I am using http://www.browserstack.com. They have really great service for what you have described.
onion2k 14 hours ago 1 reply      
There was an HN story about http://nightwatchjs.org/ here recently. It's a nice wrapper around Selenium WebDriver that enables testing across browsers automatically from a test runner. Not used it yet but it does look good.

There are many other wrappers around WebDriver too.

sp332 13 hours ago 1 reply      
Microsoft makes virtual machine images available for testing versions of IE. https://www.microsoft.com/en-us/download/details.aspx?id=115...
Ask HN: Do you have any code currently in production that you're ashamed of?
28 points by krstck  13 hours ago   58 comments top 40
digitalsushi 12 hours ago 1 reply      
Every programmer has a little sewer system buried beneath them. Each morning it routes digital sewage to and fro, through home built mashers and sprockets and fittings and tubes and gears. It feels good to see a brand name logo on some of these devices, a self given high-five for doing it the Right Way, but invariably there is some lopsided widget bolted to the side with the signature of self.

It's always shameful to know this little sewer exists beneath us, our livelihood, our brain babies. To think of all the twists, turns, and dead ends, unknown waterfalls and geysers yet to be filed away in bug reports, it's sobering and makes the best of us self-hating.

To peruse other's code, seeing beautiful order, a source code aira, a single author's master work in symbols... is always the shortest path to shame in our own designs. Our intimacy with our own creations magnifies our self critique.

Of course I am ashamed of my code. It's the inverse mold of the wrinkly shape my brain is, and for others to see it is the barest, weakest thing I can share. One that I am paid to every day.

rprospero 11 hours ago 1 reply      
Somewhere out there is the second program I ever wrote professionally. Within that program is the greatest SQL injection vulnerability of all time. It's not subtle issue where I forgot to properly sanitize user inputs. Nope, it's a page that explains in big, bold, friendly letters that any text you type into the text field will be immediately sent raw to the server for processing. It might be the world's only self-documenting SQL injection exploit.

I tell myself that the page is only accessible through the administration interface, which is itself only accessible from the sysadmin's computer and with a proper password. I remind myself that there is no PII in the database and that the worst case scenario, if the system is cracked, is that someone has to count all the desks in the building again. I remember the fact that the client specifically wanted this feature.

But, mostly, I just console myself with the knowledge that my name isn't in the source code, so whatever poor bastard is maintaining that monstrosity now can't track me down.

GFischer 12 hours ago 2 replies      
Yes, most of it :)

And I'm going to leave a lot more when I switch jobs in the near future.

On the other hand, I had to maintain some awful spagetti code when I was starting out (and much of that was written by the current CTO!), so what goes around comes around.

I'd like my successor to hate my guts a little less, but sadly I won't be around to explain why I made several suboptimal (or flat out wrong) choices - most were of the "you have one week to implement this" variety, but others were just me dropping the ball.

When I give my 2 weeks' notice, should I go around all of my old code adding comments? Documentation? What would you like if you were to maintain some spagetti VB6 and .NET code?

onion2k 12 hours ago 0 replies      
looks at what was deployed this morning


yesimahuman 12 hours ago 1 reply      
Yep! Lots of it, actually. The biggest thing you learn is that it really hurts the ability to extend and grow the feature set of the product over time, but that if the product never gets off the ground that never becomes a concern.

But by writing and deploying crap code, you also learn how to write it better the next time. I think most devs know by now how much bad code runs the world.

joesmo 1 hour ago 0 replies      
I'm not only ashamed of it, I apologized to the programmers that had to come after and maintain it. Regardless, I don't regret it--it helped me get where I am and ironically, it works well and is quite fast. Too bad no one can figure it out.
benched 12 hours ago 0 replies      
All the code I've written at my current job is deployed to an audience of something like 35 million. As of now, I haven't been made aware of any bugs reported against it. It's formatted nicely. Things are named well. I dunno. How should I best try to fit in with the predictable mea culpa torrent this thread is sure to become? Oh, I must not be learning anything. That's the accompanying natural law, right?

My point: It doesn't make sense to say "of course my code is shit" unless you also have in mind parameters for what would make 'good' code. My standard is simple at this stage: Does it work and not annoy users? Can my team read it? Then I'm not giving it further thought, positive or negative.

weavie 12 hours ago 0 replies      
Pretty much all of it and for several reasons. 1, I keep learning new stuff. 2, for it to be in production means there comes a point where I have to stop refactoring it. So although it could probably be leaner and cleaner, at least it is in production. The code I do for myself that I want to be really proud of never ships because there is always something else to do.
wwweston 11 hours ago 0 replies      
I work for an agency whose clients include big 5 automakers. Since last April I've been assigned to do maintenance and feature requests on a JS-heavy mobile/tablet build-and-price web app for one auto manufacturer.

The codebase itself seems to originate in 2009; there's some kinds of controllers, but no consistent model to speak of (just lots of service calls, with JSON/data markup stored in and retrieved from the DOM). It has its own not-jQuery DOM manipulation function(s) which, of course, are more poorly conceived and missing significant chunks of the utility of jQuery, and the codebase largely never rises to a level of abstraction above DOM manipulation.

Because bad code is a bit like abuse -- there's a cycle of transmission -- I tend to write pretty bad code for this project. If nothing else, even when I'm writing good-ish code I'm still writing at the DOM manipulation level, which isn't so good. And that's the high point I can aspire to without taking on a significant rewrite (assuming anybody would pay for it).

So, day to day, when I'm not reading terrible code, I'm writing it. Good times.

(Also: not to say that I've never written terrible greenfield code... I have, and some of my never-show-this-to-anyone newbie C code may still be in production as part of an not super popular but nevertheless enduring e-commerce product. Sometimes you start the cycle. :/ )

emhart 12 hours ago 0 replies      
Oh yes, I'm actually in the middle of cleaning up a huge chunk of it. Managed to strip 1200 LOC yesterday, going for another 1k at least today. Then a long series of commits, a new deployment and the next time I, or anyone else, has to look at this, I won't feel quite as guilty.

That said? It is an incredibly rare luxury in my career thus far, to get these sorts of organizational breaks. I recently checked the code of the first website I ever built - I was learning on the job and asked to convert our flash only website to HTML/CSS.

To my horror, every line of my code was still in place. Every dumb mistake, every awkwardly shoved pixel, every dubious form. Everything. I actually found a couple potentially serious bugs & emailed my former employer to report them. Bleh.

seivan 11 hours ago 0 replies      
A ton. None of it is owned by me though.My own code, that I own (open sourced mostly) is actually well tested and amazing.

That's because I can take my own time and sit down for four hours and just think of stuff like naming functions or selectors.

I could spend time on Twitter and/or IRC and ask people about gists of code and their opinion of it. Imagine it being user testing, but code base. Basically reviews.

I would be able to go back and just rewrite it for the sake of naming sakes.

No employer would ever approve of that.

That's why my own code is always going to be better than the one I am paid for. No one wants to pay for that.

tbrownaw 12 hours ago 1 reply      

I have code I would write differently now. I have code I don't like. I have code that I know doesn't quite work all the time. I have code that I would have written differently if I had more time.

I don't have code that I knew was wrong to write the way I wrote it when I wrote it, given whatever priorities and constraints I was working under.

It probable helps that I don't see my job as writing software. I see my job as making sure the rest of the team can be as effective as possible, and two imperfect programs that save 30 minutes each despite crashing occasionally are better than one perfect program that saves 45 minutes and never crashes.

buckbova 12 hours ago 0 replies      
No, I wouldn't say ashamed.

When I first started out, I would not let there be something I didn't have some knowledge about. So, after work I'd go home and study or work until I understood everything I could about my position. For me this was classic asp, cold fusion, sql server, db2, informix, perl, and other technologies for CRUD applications, reporting and data management.

I always tell all the developers I work with, If everything you put into production is "well thought out" and has reasoning behind your decisions, then I don't mind if it is not the design pattern I would choose, or uses the exact style I prefer.

ChikkaChiChi 11 hours ago 0 replies      
There are two types of emotions I can feel when opening code greater than a year old:

1. I get excited because I look at my shit code and realize how much better I've gotten SINCE I wrote this piece of dog turd.

2. I get excited because "Past Me" was clear, documented well, added something that I wasn't expecting, and did an all around fantastic job when I wrote it. Past Me was fucking awesome.

The point is that I'm never ashamed. I'm learning.

kirkthejerk 11 hours ago 1 reply      
I wouldn't trust/believe a programmer who isn't ashamed of something they've done.

In an embedded system, I couldn't think of a nice way to check for the start+end dates for daylight savings time, so I just hard-coded arrays with 10 years worth of dates.

I was eventually surprised to find out that (A) in 2005 the US changed the DST dates, and (B) our system actually survived longer than ten years.

nswanberg 12 hours ago 0 replies      
I have code in production that I wouldn't be happy to have to share. I have some that I'm a little proud of. But none of that matters compared to my feelings about whether it's useful and usable. I'm still working on making something I can be proud of in that way.

A few weeks ago someone posted about what it's like to work on the Wolfram Alpha codebase, and described it as a pile of mud. I've read that parts of the Google search codebase could use some rewrites (and a long time ago someone converted it from Larry or Sergey's crappy java code to some nicer python). But noone but the people working on them see that, and while some folks who come and go might mutter under their breath as they sort through what some code might be doing, their opinions pale in comparison to that of the people using those systems every day.

mattgibson 12 hours ago 2 replies      
If you're not ashamed of it, then you've learned nothing since you wrote it.
Jallal 12 hours ago 0 replies      
As every programmer, I think my skills have improved over the years so yes, the code I do write now is far better than the one I've written years ago.

I'm not really ashamed, as I do not hear about the "bad" code I've written. However, when I look behind and assess the quality of code I've been working on, I sometimes say to myself that my code "was not that bad".

It has been mentionned a couple of times but now, I like to focus my efforts on code maintainability. I know I'll leave one day or another my current job and I do not want to be hated like the ones I've hated in the past (or in the present...) for having written shitty code.

There one another habit I've adopted quite early : when I was writing some bad code and I knew it, I always tried to let a comment explaining why I chose this path and what I would have done provided the conditions were different. I could have written sub-par code due to code consistency with the other parts of project, to lack of time, sometimes because the implied refactoring would be to huge to handle in a given timeframe, or because a side effect is likely not to have been anticipated at first sight, whatever.

At last, the guy who will pass behind me will know my point of view, and even get some hints of what should be done in an ideal world. And I liked to put some jokes or funny sentences. Those, I've heard about later after my contracts.

dm2 12 hours ago 0 replies      
I don't think I have any ugly code but I have built insecure apps and sites before. I've asked myself "what if someone does X, could they steal data?" numerous times after a project is out of my hands.

Similar question: How much damage could you do (or data could be stolen) by hacking sites / apps that you built in the past?

My former boss, who was also a software developer, frequently told me that moving to the next project was more important than doing a thorough security audit of large public sites we built. It wasn't my company on the line, so I had no choice.

Also, many of the projects I've built have been proof-of-concepts in my mind that have been rushed into production. Those projects have likely not scaled too well...

krapp 12 hours ago 0 replies      

At least one person is possibly using this in production to match images in a catalog. He contacted me about its tendencies to give false positives (because it's optimized for speed and not necessarily accuracy) and I had to admit that I literally do not understand the math or image algorithms well enough to make it do what he wanted.\

Also most of the code I get paid for is javascript hacks for Business Catalyst sites, which are usually ugly, wicked little monsters whose only redeeming quality is they work.

artificialidiot 12 hours ago 1 reply      
All of it. Right now I am looking at an SQL&perl mutant I wrote and wondering what I was smoking at the time.
Ronsenshi 12 hours ago 0 replies      
You bet. My early code sandboxes are horrendous to look at and probably headache-inducing for anyone who might try to decipher them.

I remember one small PHP-based random avatar generator I wrote several years ago. Even at the time of writing I understood how horrible it was. Nowadays I'm afraid I'll have a stroke just by looking at it.

But those were the past days. Nowadays i know better thanks to some great people out there with smart things like SOLID, OOP etc... . I wonder what i'll think of my current code in a year. Most likely will be embarrassed by some of it anyway - there's always a better way to write something.

foz 11 hours ago 0 replies      
I find that by calling it "legacy code", it helps to feel less ashamed. In general, I would be worried if I did NOT have production code that I felt could be simpler, faster, or more stable. Maybe just a side-effect of becoming a better developer.
mschuster91 12 hours ago 0 replies      
Not code, but a 2-years-not-upgraded public facing web server.
bonobo 12 hours ago 0 replies      
Lately the only thing I've been feeling ashamed of is the amount of code I DIDN'T write. I think this is mostly because I fear feeling ashamed of my code after it's running or, even worse, after it's public. I don't know...

I'm the epithome of analysis paralysis. Being ashamed of my own code is my next milestone. :)

Glyptodon 12 hours ago 0 replies      
Oh yeah. I assume everyone does.
jbrooksuk 12 hours ago 1 reply      
Yeah, a lot of my code that's not a personal project.

I had a lot of code left in my hands when I started the company I'm at, it was awful, and unfortunately I've not got the time to go through and rework it yet. One day though. So everything up until now has just been bolted on and it comes back to bite me at least once a month.

I've started using Laravel now and I feel much more comfortable knowing that it's keeping me on the straight and narrow.

ghh 12 hours ago 0 replies      
Yes! Please refer to the image at [1].It's also on the cover of the introduction of 'Clean Code' [2].Everyone here has some code that they are not proud of. You should see it as a sign that you've learned from the experience of designing and developing it.

Want to steadily improve on non-production code? Try codewars.com: you're asked to solve 5-30min coding exercises and after can immediately browse the solutions of your peers. The short feedback loop helps you understand how you could've improved while the code is still fresh in your head.

[1] http://www.osnews.com/story/19266/WTFs_m

[2] http://www.amazon.com/Clean-Code-Handbook-Software-Craftsman...

wnesensohn 12 hours ago 0 replies      
I have only written very few pieces of code which I'm not ashamed of right now. A few functions here and there which make me smile when I read them.

But despite that I have the feeling that I usually improve the code I touch. I don't know if that's a good thing, as it means that I usually learn from mistakes I had to make by myself, but at least it's learning, right?

I try to minimize the amount of code I write and don't actually learn on. If that code should become the majority I know that I'm doing it wrong.

I'm coding for only 15 years now (10 years full-time), but I hope that I'll never stop to be ashamed of my code.

implicit_none 9 hours ago 0 replies      

My first big web application has absolutely no unit tests. None. Why? Well, when I first learned to code I was taking the Udacity cs253 course, in which there was no instruction on unittesting in Python, so several of my projects shortly thereafter contained no unittesting. I was actually quite proud of these projects until my brother asked if I had any tests ... "what is a test?" ... his face was priceless.

nobodysfool 12 hours ago 0 replies      
I try to post my shameful code to github in the hopes that I'll do my best with every new project I start. I've only just started it, but it's helped with my thinking process.
at_kjellski 10 hours ago 0 replies      
Yes, actually the better part of the system I'm working on right now. My very own code looks extremely bad to me since I'm continuously learning. Isn't that a normal part of trying to get better? I wrote some really evil stuff already, but I try to get better at least...
jonalmeida 11 hours ago 0 replies      
I worked on some mobile UI stuff which had a couple alignment issues which I didn't get to fix before I left. Now that it's in production, that's all I see as an end user of my own product.

It's nothing disastrous, but seeing it there all the time kills me a little everyday.

theshadowmonkey 9 hours ago 0 replies      
Yep. But that was done on a time crunch or had to get it done times. So, I make note of things as I write such code wishing to fix them one day :D
duiker101 12 hours ago 0 replies      
I can imagine this thread become pretty long... btw definitely.
wnevets 11 hours ago 0 replies      
I'm ashamed of half of the code I write
mikelbring 12 hours ago 0 replies      
Lots of Forrst
danso 12 hours ago 0 replies      
This was the first Rails app I ever built:http://projects.propublica.org/bailout/

It looks great due to my colleagues actually applying good design principles to it, but the backend is definitely horrible, thanks to me. A contractor helped me with the admin interface but when I left, instead of paginating through the many data entries, it just loads everything up, resulting in a 1 minute delay for any data entry/updating/listing action. I think that was all overhauled by much better devs after I moved on.

27182818284 10 hours ago 0 replies      
All of it.
stigi 12 hours ago 0 replies      
Ask HN: Decode Youtube 500 page
42 points by aeon10  3 days ago   18 comments top 8
Perseids 3 days ago 1 reply      
Why do you assume it is not base64 encoded? I have always come to believe it is some encrypted data. If I was Google I would probably give every server a UUID and a symmetric key. If an error occurs encrypt (and authenticate) the stacktrace and other debug information with that symmetric key and prepend the UUID. As a developer you can then find out the server that produced the error message, log in via SSH and decrypt the debug information.

But it would be interesting to collect a lot of this error messages to check if they appear to be completely random.

slashdotaccount 3 days ago 0 replies      
It is non-standard base64: it uses '_' and '-' instead of '+' and '/'. You can read in Wikipedia at https://en.wikipedia.org/wiki/Base64
djthorpe 3 days ago 1 reply      
The code is indeed very useful to debug issues. When asked for it by YouTube, please provide the actual text rather than a screenshot...I get sent the screenshot a lot and then I have to use OCR software in order to decode it.
WhatsName 3 days ago 1 reply      
goblin89 3 days ago 1 reply      
Perhaps questions like this one should be asked somewhere else, possibly StackOverflow: http://stackoverflow.com/questions/21681084/decoding-youtube...
kaivi 3 days ago 0 replies      
It is surely an encrypted stack trace, encoded in base64, which is probably being spit out by the load balancer proxy. I would not be surprised if Youtube developers used their own Chrome extension for making that binary meat readable.

I have once set out to write a module for Nodejs for the same purpose, but never finished it. Can't really see a downside in this way of reporting errors.

babawere 3 days ago 0 replies      
1. Non-standard base64 and 2. Definitely Compressed ... by guess would be snappy compression3. Possibility of serialization using protocol buffer4. not sure if such information would be encrypted after such a server failure
nigma 3 days ago 1 reply      
Using Python 3.3:

    import base64    base64.urlsafe_b64decode(s)

Ask HN: How do you make time?
4 points by kfullert  1 day ago   4 comments top 4
avenger123 1 day ago 0 replies      
Sometimes we just have to slow down in order to let life catch up for us.

I think anyone with two or more kids that are still young (let's say less than 7-8 years old) its just too much effort to get stuff going on the side that don't involve your 8 hour work day. Something's got to give if we want to be more than superficially involved with our kids lives when they are young.

The flexibility you have right now is really not to be taken lightly. You have no commute and you can control your schedule somewhat.

My recommendation would be to beef up your RoR skills and start applying for remote work that you could do alongside your day job. At some point, with enough experience you should be able to get a full time remote job making what you are now.

The only way to do that is ruthless time management. This starts with waking up early in the morning - 5 or 5:30 AM and going from there. Weekends would also include waking up this early and getting work done. Your "free" time would essentially be the time with your family. Any other time would involve pursing your goals. So, no TV, no hanging out with buddies unnecessarily.

All this is hard but that's what we get for wanting to raise a family and make something of ourselves. The light at the end of the tunnel for this is that once your kids are older and much more self sufficient, you can basically be a rocket with your habits and accelerate fast.

jsnk 1 day ago 0 replies      
Disclaimer: I am only 26, got no kids. In a long distance relationship, and I spend 1/2 to 1 hour on the phone.

Some things I found useful are

- Audiobook during commutes that's usually 2 hours/day.

- 1 hour a day rule. I try to spend at least 1 hour a day working towards a goal.

- Cook less. Cooking is usually much healthier, but cooking takes up a lot of time.

- Use stayfocused chrome extension (https://chrome.google.com/webstore/detail/stayfocusd/laankej...). I wasted too much time on Reddit and HN. I give myself an hour on these sites per day.

As for Rails specific improvements, I think creating your own blogging platform is a good challenge which covers a lot of conventional problems.

GFischer 9 hours ago 0 replies      
I'm all for learning new stuff, but since you're already strong in .NET, would ASP.NET MVC 5 + Entity Framework 6 fit you better if you want to do your own startup?

Or do you want to work for startups in your area, and Ruby is a common requirement in the UK?

It sounds tough getting some time for yourself in your scenario.

glenntnorton 22 hours ago 0 replies      
Our lives sound nearly identical (39/married/3 kids) I've found that finding time gets a little easier the older the kids get. (now ages 8 - 14). When they were younger, it was really tough.Personally, I'd try the commuting before moving. Moving eats up everyone's time.
Ask HN: What startup did you try to create in past that failed?
10 points by tzz  2 days ago   5 comments top 5
chewxy 2 days ago 0 replies      
I list some my failed startups in my HN profile. Chronologically:

1337Tech(2005) - a tech review blog ala AnandTech. Tear downs, detailed reviews and the like. Failed because we couldn't keep up a schedule

edgeyo(2009-2012) - a matching marketplace for investors and startups - think AngelList + SecondMarket + KickStarter. Ran into some regulatory concerns, and eventually we decided to just close shop because we couldn't put enough time and effort into working past some of those issues.

SpellTrade(2010) - a options exchange for Magic the Gathering cards. Supply problem caused a bootstrapping problem (our partner couldn't put up enough to supply the cards for bootstrapping). Closed before we even made a sale.

Strangers For Dinner(2012) - a matching market for strangers - one party will host a dinner party, and 5 other people will show up as guests. We managed to match about 50 parties in total before the number of people signing up as guests far outnumbered the people wanting to host. Also, people were not likely to host a second time. Couldn't get around this problem, plus the team had other commitments, so we shut it down.

2 out of three of the startups I had in the last 4 years or so were killed because they eventually became zombie startups. We couldn't get traction.

systematical 2 days ago 0 replies      
In 2006 I created a site that allowed you to upload, categorize, and play your MP3s. I was solving a problem I had where a recent hard drive failure caused me to lose ALL of my music.

The site actually got big really fast because in 2006 no real competitors existed and SEO was very easy (then).

It failed for a few reasons:

One, before the site I didn't know how to program. I actually taught myself how to program in PHP/MySQL/JS to launch the site. The code was very shitty and so was the design.

Two, I didn't understand just how much bandwidth this would consume. I ran this out of my downtown 1 bed room apartment on a PC built in 1999. Sometimes I'd wake up from parties and see people passed out next to it with beer bottles and weed on top of it. Eventually my Dad donated a DL380 to me, but the bigger problem was I ran this on a business class DSL line. Playback and uploads were terrible. Sometimes I would actually disconnect the server from my modem so I could do online gaming.

Three, I had no idea about how to make money online or find investors. I had no plans other than just build it cause its cool.

In the end it worked out really well. I discontinued the site and continued my career in development.

hkarthik 1 day ago 0 replies      
I tried to create a startup to allow home owners to track items in their home which require periodic maintenance, receive notifications, and monthly summaries. I was then planning to help connect them with local service professionals with targeted leads to make money.

I tried to do this as a bootstrapped startup, while maintaining a day job.

In the end, it failed after about a year of my working on it and launching a private beta. Here's why I believe it failed:

* I should have launched with a mobile app first. Desktop web apps (which we focused on) were a non-starter. But this was 2010 so the rise of mobile was still unknown.

* Sales to service professionals is tough since many are small, family-owned businesses. This requires a high touch sales process and an army of sales people to execute on it.

* Doing a business like this while bootstrapping and working full time was impossible and I moved slowly as a result. To make it work, it would require going at it full time with VC funding.

Since I shut it down, I have noticed a few startups penetrate this field (RedBeacon, Thumbtack, HomeAdvisor) and it's been interesting to see how they tackled the same problems.

I learned a lot from the experience, both professionally and technically (it was my first Rails app) which I've been able to successfully leverage into a career working with startups. So I don't consider it a loss at all.

amerkhalid 1 day ago 0 replies      
We created a startup Yardale in 2010. It was focused on bartering. Basic idea was that you create 2 list, wants & haves. You can share your profile on Facebook and and hopefully your friends will see what you want to sell or barter. It had automatic matches if 2 people have exactly an item that they want to exchange.It failed because lack of some essential functionality like automatic emails, automatic matching with items of same values, etc. Also marketing efforts didn't workout and we had only our friends and family sign up.
ryanjanvier 1 day ago 0 replies      
I created a startup that solved a problem. We had our first 5 customers before we even had the product completed. We had bootstrapped the project, and were able to break even the first 3 months.

Why did I fail? Co-founder issues, no actual plan put in place, we had an MVP, but we never pivoted to meet the needs of our customers, and we lacked constant communication with our early adopters.

I am continually thinking about relaunching the project, but being a stay at home Dad, and freelance developer has made it hard for me to find a good co-founder. I could potentially launch by myself, but I know that I lack the skills to properly get it in front of my target market.

Syncfusion Essential Studio for JavaScript for $1
4 points by broham  1 day ago   2 comments top
js7 1 day ago 1 reply      
Does this provide me with the code?
Ask HN: What percentage of a software company's profit should go to salaries?
2 points by aadilrazvi  1 day ago   4 comments top 4
FigBug 1 day ago 0 replies      
Profit can't go to salaries, or else it wouldn't be profit.

If the question is actually revenue, it completely depends on the business. How much marketing, sales, support etc the software requires.

mattwritescode 18 hours ago 0 replies      
Should be what percentage of revenue should go on pay.

Profit is what is left once all costs have been taken from revenue.

rch 1 day ago 0 replies      
Have a look at how W. L. Gore and Associates is structured sometime.
ye 1 day ago 0 replies      
Trick question.

Profits are calculated after salaries are paid.

Ask HN: Which VPS hosting providers supply native IPv6?
5 points by memracom  2 days ago   3 comments top 3
mjn 2 days ago 0 replies      
Rackspace, Linode, and prgmr.com all offer native IPv6 to the global IPv6 internet. You could set up one of your hosts as dual-stack running an IPv4/v6 gateway and then go IPv6-only within the rest of your network. I don't believe any of them provide the gateway themselves, though.
strick 1 day ago 0 replies      
AWS can do this I think but you need to use an ELB (elastic load balancer) to handle the ipv6 connection to the internet and use ipv4 between the ELB and your EC2 servers. Someone please chime in if I have this wrong.
nishankkhanna 14 hours ago 0 replies      
Ask HN: As a mid-level ruby developer, should I learn Java or ObjC next?
8 points by mmanfrin  3 days ago   7 comments top 5
hkarthik 2 days ago 1 reply      
Learning Java to do Android and learning Java to write large web and server applications for the enterprise are two completely different domains which just happen to share the same language.

I think that one can learn the basics of Java to get started quickly, but the majority of one's time will be spent learning the intricacies of the SDKs and libraries.

So the bigger question to ask yourself is whether you want to write mobile apps or enterprise apps. Pick one, and go from there. Don't worry about the language.

eonil 3 days ago 1 reply      
Obviously C/C++. The most insane choice but also the only sane choice. C/C++ is supported by literally EVERY platform. Whatever platform you try, it will support C/C++, so that's most useful. Even you can't find usefulness from it, it will make you to feel any other language just easy.
matt_heimer 2 days ago 0 replies      
What type of apps? I ask because I'm using LibGDX to create games for Android and those games can run on iOS by using RoboVM.

Also Android development can be done on almost any type of computer while you must own a Mac to develop iOS apps.

gesman 3 days ago 0 replies      
Java. The whole world using it vs. ObjC only Apple.
dvdand 3 days ago 0 replies      
I think the premise of your question is wrong. Why do you have to decide to learn one or the other? Why not both? Another way of thinking it would be which one should I learn first? The answer to that is it depends on what your plans are? Are you trying to build apps to learn the platform or build a business?

Hope this helps.

Ask HN: How persistent and smart do you have to be to learn to program?
5 points by jamesfranco  2 days ago   22 comments top 13
LarryMade2 2 days ago 0 replies      
One strategy is load up some interesting project already written onto your workstation and dive in and tweak away. You will 'get your hands dirty' in good code and get some instant gratification from the changes you make. Along with that, work on building your basic scripts and projects, when you feel confident with tweaking code go back to coding from scratch, get frustrated, go back to tweaking stuff...
dragonwriter 2 days ago 1 reply      
> I'm a beginner trying to learn Ruby on Rails. Most tutorials show who to .reverse strings of text.

Don't use an online tutorial, you need more. You really probably should learn the basics of programming Ruby before diving into Rails, but, if learning the basics is demotivating and you need a deep dive, I'd recommend you get the book Agile Web Development with Rails [1], which is a pretty good dive into rails that covers a lot more than any web tutorial will.

[1] http://pragprog.com/book/rails4/agile-web-development-with-r...

NAFV_P 2 days ago 0 replies      
Not particularly smart I would say. Frameworks exist partially to make the process of creating programs easier and quicker.

Very persistent I would say. I have a lot of persistence, but I don't think that I have enough.

For now, put the train set away, and learn Ruby. With enough persistence, you could end up beating some professionals.

I looked up reversing strings in Ruby and ROR, no wonder you're bored. I had to write all this to get it done in C and it was quite entertaining:

  char *reverse(char *s) {    char *a=s, *b=s+strlen(s)-1, c;    while(a<b) {      c=*a;      *a=*b;      *b=c;      ++a;      --b;    }    return s;  }

lutusp 2 days ago 0 replies      
> I'm a beginner trying to learn Ruby on Rails.

Really? That's like learning Calculus before addition and subtraction. I recommend that you learn basic computer programming before trying to learn how to manage a development scheme like Rails.

> When am I going to learn the good stuff?

Don't try to start at the top, you will crash and burn. Start at the bottom and work upward.

There are many ways to start, and reasonable people may differ. I personally recommend that you learn Python first -- it's very approachable and it teaches you the basics first.


iamwithnail 2 days ago 0 replies      
If you're not seeing how you're going to use these things iqwn your own code, you should have a think about why that is; these techniques are the basis of everything else that you're going to do. I've been learning for 6 months now, and I can say I'm definitely still using "boring" stuff that I learned when I was doing the first cocademy tutorials. I learned a bit of python, realised I wanted to put a lot of it on a web page and then went to Django from there. I'm still making a lot of mistakes, so you do need to be persistent, but smart? Not for the basics, not really, just willing to learn. There comes a point where you need to be smart, but it's further down the line than I am. I can get away with the clunky hacks and boilerplate code I often end up using but I pay a price for that in terms of speed of delivery and performance. It'll get better over time.
centdev 2 days ago 0 replies      
As someone who doesn't know Ruby, my only advice relates to coding in general. When I first started out with absolutely no experience at all, I started by getting a basic understanding of the language and trying to write small apps. It felt more rewarding to have a goal in mind, even if the app would never be shown to anyone else. Also I'd recommend not copying any code that you find on the internet verbatim. Coding becomes an art form and you don't want to pick up the bad habits of some developers by using code snippets you find around.
wturner 2 days ago 0 replies      
I taught myself conventional programming with javascript over the last few years by virtue of my fascination with audio. The 'web audio api" exists hence a lever is in place to keep me going through the inevitable "trough of sorrow" dips.
gvickers 2 days ago 0 replies      
About two years

I'm serious, two years of an hour or two a day (at least!) will give you enough foundation to really enjoy it. You have to start with tutorial, use the sample projects you build and change them drastically. Break them, improve them, talk to people about them.

The issue that is most common is the starting momentum is difficult. There are some concepts that are dead simple in programming, by their nature they are composable. The composition of simple concepts form virtually all the higher level concepts. It's not so much learning to code as it is learning to think in a certain way.

collyw 2 days ago 0 replies      
I think it is the sort of skill some people get it some people don't.

I did a intense year long IT conversion course in 2000 (dot com boom time). The course started with 3 weeks of intense Java teaching followed by an exam. If the student failed the exam, they were advised not to take the course. A couple of the people decided to stay on anyway, and didn't do very well afterwards.

Ronsenshi 2 days ago 1 reply      
I concur with lutusp and also recommend learning Python first (or at least raw Ruby).

Before you start working with huge, highly opinionated framework such as RoR, you should understand how programming in general works. ifs and elses, functional programming and object oriented programming, patterns etc.

Regarding your question. You have to be very persistent - there's a huge amount of stuff to learn. Months of active study and tinkering with tutorials and small projects.

If all you want is to whip out a login page and a blog, then maybe it'd be better to use a CMS?

Goranek 2 days ago 0 replies      
I think it's not hard to learn how to program but it's hard to be good at it and be able to continue working and being productive when you encounter uninteresting parts of a project.
garyjob 2 days ago 0 replies      
Try learning and getting familiar working with and manipulating the more basic data structures like String, Array, Integers.

These data structures usually get ported across various languages.

Once you have a good grasp of that try starting work on the tutorials they have on Rails you can find online.

phantom_oracle 2 days ago 1 reply      
Are you a professional actor?
       cached 14 February 2014 05:05:01 GMT