Toonify Yourself - <AUTHOR> https://toonify.justinpinkney.com/ <comment><USER2> The examples on the landing page are not representative of the quality of the service.

Try it with internet photos of people. What it does is just morph the face a little: larger eyes, shorter forehead, elephant ears, narrow and taller mouth. The only thing it tries to generate is hair, and it fails horribly at it if you try with completely bald heads.

</comment><comment><USER3> I decided to make this go full circle and grabbed a picture from thispersondoesnotexist.com, and toonified it. It worked fine.

I for one welcome the singularity and all it entails.

<comment><USER4> Interesting idea!

</comment></comment><comment><USER5> Good grief! I know I'm not Prince Charming but I was hoping for slightly less Shrek in mine. I think I'll be going back on that diet...

<comment><USER6> LOL. My wife said "you look like the dad from the Croods." It definitely seems to over caveman a bit, but I liked it!

<comment><USER7> I had the same experience. I'm not _quite_ that much of a knuckle dragger.

[https://imgur.com/a/4YqFPVl](https://imgur.com/a/4YqFPVl)

<comment><USER8> > If you're seeing this message, that means JavaScript has been disabled on > your browser, please enable JS to make Imgur work.

That surprised me, I didn't expect an image hosting website to require JS.

<comment><USER9> [https://i.imgur.com/2V5OlVz.jpg](https://i.imgur.com/2V5OlVz.jpg) should work better.

</comment></comment></comment></comment></comment><comment><USER10> The Toonify produces avatars which match the source photo in terms of detail and feature correspondence. In that regard, at first take, the algorithm might appear to be working at a near pixel level of granularity. However, at least in the examples I tried, there is a loss of similarity and recognisability, to the extent that I don't think my friends would get that my avatar is me, and I don't get that feeling about the avatars generated from pictures of my friends. For that reason, I am wondering if the algorithm is based on feature recognition (eyes, nose, mouth, eyebrows etc), followed by a feature level of replacement/distortion rather than pixel level?

The celebrity examples might be a different case in terms of our recognition sentiment, because of their familiarity, and the juxtaposition of a number of phenotypically diverse celebrities in one set, which gives a correspondence in the diversity of the input set and the output set.

What modifications would be required to the algorithm to score consistently higher in facial recognition of the avatar by people who view the avatar cold without access to the original photo?

I'm asking rhetorically, of course. Such research might take a long time. Toonify looks like a good foundation for what might be an open ended project.

<comment><USER11> This is explained in more detail here: [https://www.justinpinkney.com/toonify- yourself/](https://www.justinpinkney.com/toonify-yourself/)

Specifically, there's this snippet: "These StyleGAN face models can produce a huge diversity of faces and it's actually possible to find basically any face inside the model. It's actually a straight forward process to search for any image of a face in the model. So given an example image you want to find you can find a "code" (aka latent vector) which, when given as an input to the model, will produce an output which looks almost exactly like the face you're looking for."

So it seems like they first generate an image that is similar to yours with one model, and then translate that too its more cartoony counterpart.

</comment></comment><comment><USER12> Ah! Gets excited.

1\. Clicks on the browse button to find a good selfie.

2\. Uploads the pic to Toonify.

3\. Clicks on 'Toonify' button:

> Failed: Didn't find any faces in the supplied image.

Ack what? Ok. The machine is still learning.

(P.S: I like the project though. Hope it will improve over time. But toonification of any pic without deep learning/machine learning thrown into the mix is already a solved problem, no?)

<comment><USER13> We're using dlib's frontal face detector for the face detection. It's ok, but certainly not state of the art, maybe in the future I'll find a better face detector...

<comment><USER14> The way I solved this for Faceweave is, if no face detected, let the operation proceed anyway. This gives the user the ability to line up the face themselves.

The logic is basically: ask dlib for face landmarks; if no landmarks, resize image to 1024x1024 and proceed; otherwise align face.

If you happen to like lisp: [https://github.com/shawwn/stylegan- server/blob/10c396fa2ef07...](https://github.com/shawwn/stylegan- server/blob/10c396fa2ef076ff4078a22a9a9be4a2b43c434e/repl-newest.l#L522-L529)

Also, congratulations on launching this! Super exciting.

Readers, if you use twitter, be sure to follow the creators:

Justin [https://twitter.com/Buntworthy](https://twitter.com/Buntworthy)

Doron [https://twitter.com/Norod78](https://twitter.com/Norod78)

Been following them for like twenty years now. They tweet a bunch of awesome stuff about ML, and stylegan in particular.

</comment></comment></comment><comment><USER15> "We don't store any of the images uploaded or generated. Once the toonification has finished running no images are kept on our systems."

Sure, then don't hide an otherwise perfectly normal computer program under a random web interface.

<comment><USER16> A perfectly-normal program that might only load/run on a Google Cloud TPU or a Titan V, mind you; and probably one held together with tape and bailing wire (hardcoded paths, "works on my machine", an undocumented and unreproducable build env, etc.)

Y'know, the same reason that the "perfectly normal computer programs" that generate the data for scientific journal papers aren't usually published.

<comment><USER15> I understand that some networks might require the compute power that you mention, but this just seems like an average CNN mapping images to Disney characters. And I don't have much experience on that front, but like qayxc said, this should run fine on consumer hardware.

And yeah, many journal papers suck specifically for the reason that their results are not reproducible.

</comment></comment></comment><comment><USER17> Does someone remember "Kai's Power Tools"? The sample pictures instantly reminded me of that...

<comment><USER18> I remember reading reviews on this app (KPT Bryce [0]) in MacFormat in the 90s or so. The software seemed to use a really unique UI for development when compared to most creative Mac apps of that time.

\---

[0]: [https://en.wikipedia.org/wiki/Bryce_(software)](https://en.wikipedia.org/wiki/Bryce_\(software\))

</comment></comment><comment><USER19> It seems to turn every male into an Indian.

<comment><USER20> Presumably there is some kind of bias in the training set causing this. It does seem subtle but noticeable, although I wouldn't say it's just the males.

</comment></comment><comment><USER21> It doesn't appear to do well with glasses or baldness.

<comment><USER22> Or winking, or beards.

</comment></comment><comment><USER23> @OP, for images from iOS, portrait photos are uploaded in landscape mode, and you need to rotate them before the image pipeline.

Currently I believe that is what is causing your facial detection step to fail.

If you want to try this on iOS, rotate your phone clockwise 90 degrees then take a photo.

<comment><USER13> Yes, I'd just come to that conclusion too. (Thanks for the tip anyway). I've just pushed an update so this should work now.

</comment></comment><comment><USER24> The visual style reminds me somewhat of "Team America: World Police".

</comment><comment><USER25> None of the `toonified` images shown on the page looks like the person in the photo.

OTOH I could immediately guess if you've shown me one of these photos: [https://duckduckgo.com/?q=leonardo+di+caprio+toon&iax=images...](https://duckduckgo.com/?q=leonardo+di+caprio+toon&iax=images&ia=images)

<comment><USER26> Yeah, I was hoping it was going to be trained on photo -> cartoon of same subject by some known cartoonist. Could be a fun profile photo that makes it look like x paper's cartoonist has thought you significant enough to warrant a cartoon.

</comment></comment><comment><USER27> Not sure what models you trained against, but my wife looks like a Kardashian. Think I can see Ray J behind her.

I look like a drunk Simpson... Barney.

Spot on!!

</comment><comment><USER28> What gets demo'd on the developer's laptop: [Idris Elba]

What gets shipped to production: [Toonified Idris Elba]

[https://assets.justinpinkney.com/toonify/images/vllkyt5r43p1...](https://assets.justinpinkney.com/toonify/images/vllkyt5r43p1p4tk7_01.jpg)

</comment><comment><USER29> Also available here, [https://deepai.org/machine-learning- model/toonify](https://deepai.org/machine-learning-model/toonify)

</comment><comment><USER30> There are two plausible measures of success for something like this:

1) Whether the generated character is readily identifiable by an observer on its own.

2) Whether the generated character is a reasonable manifestation of the chosen art style.

I think it does a reasonable job of #2 and a mediocre job on average of #1. I think greater eyebrow variability would help some so that it doesn't look like all the women get "woman's pencil eyebrow" and all the men get "man's extremely bushy eyebrow".

</comment><comment><USER31> I know HN is not normal, but I immediately tried my pets since I'm not happy to give out photos.

Didn't work, it can't find the face.

Otherwise it worked ok on the fascist leaders I tried. Black and white got color added. And one photo had an artefact put on top of both the original and the Toonify, a mirror of the top of the image to fill space perhaps?

Well done.

Also Startup idea, facial recognition for pets and sell the data to the Russians for addition tracking ability on people through proxies.

</comment><comment><USER32> Welp, that'll replace the whale in me nightmares.

<comment><USER33> ...wait what. I need to know more about these nightmares that involves _whales_. Did you stumble across a particularly vivid bit of whaler fan fiction that combined Melville with Lovecraft or something?

<comment><USER34> [https://imgur.com/r/TheSimpsons/0F2Kvyu](https://imgur.com/r/TheSimpsons/0F2Kvyu)

</comment></comment></comment><comment><USER35> This works really well when it comes to making scary pictures of my three year old niece.

I look forward to seeing if she recognises herself and what she thinks. I don't believe any adult likes a cartoon version of themselves, rarely are critiques truly flattering, a true cartoon hurts!

I tried cartoonifying my niece's favourite cartoon characters. The program failed. So you can't toonify a toon.

</comment><comment><USER36> This is so cool! I'm curious, how much does it cost to run a server that does deep learning inference on the scale of hugged-by-hn-frontpage?

</comment><comment><USER13> If people are still interested the site now back up and free to use!

</comment><comment><USER37> > _We don 't store any of the images uploaded or generated. Once the > toonification has finished running no images are kept on our systems._

I imagine this is all in good fun, but this disclaimer doesn't rule out data being derived from your face and stored or sold later.

<comment><USER13> I made this and can assure you I'm not doing anything with the images. This is just a silly side project of mine (along with Doron). I'm certainly not hoping to gain any money or data from it!

<comment><USER22> You should probably put this in the disclaimer. These days I assume all toys like this are data gathering tools in disguise. And I'm right more often than not.

<comment><USER38> He won't do that. then he cant sell the data later.

<comment><USER22> Could he do that though? I mean, hypothetically. I'm based in the EU so GDPR applies, and a picture of my face is definitely personally identifying info. So, unless I clicked something saying I consent to the data be stored/sold, I assume it would be illegal to do so.

</comment></comment></comment></comment></comment><comment><USER39> No words can describe the nightmare this just created out of my pictures. Hahahah wtf.

</comment><comment><USER40> I tried it. But now I'm sure my photo will be used to forge passports.

</comment><comment><USER41> I'll be really impressed when one of these that actually retains some of the original facial features instead of just replacing them entirely. Cool side project though.

</comment><comment><USER42> Every image I tried got a "Failed: Didn't find any faces in the supplied image." Maybe it my images maybe the server has been slashdoted idk

</comment><comment><USER43> I look awful! LOL guess i dont have a future as a toon. LOL

<comment><USER44> Not looking good here either, for once I'm happy with my original photo.

Oddly enough, I bet if the output was designed to always generate more attractive features (ala insta filters), this will take off.

Maybe I don't high cheekbones or a chiseled jaw, but lie to me dammit!

Just a tip.

</comment></comment><comment><USER45> Super fun! Would it be possible to do the opposite? :)

<comment><USER46> Something like this?

[https://thispersondoesnotexist.com/](https://thispersondoesnotexist.com/)

<comment><USER45> I was more curious about reversing Toonify Yourself's input/output–upload a toon and get a real person's face back.

</comment></comment></comment><comment><USER47> If you need some nightmare fuel, try running the output back through for another round of toonification four or five more times.

<comment><USER48> I was curious so I ran the Tim Allen on til it couldn't find a face anymore (4 times): [https://imgur.com/d1FlNVh](https://imgur.com/d1FlNVh)

</comment></comment><comment><USER49> Loved the results. Worked fine for me. Tried with a 28Kb JPEG image with lot of noise, but turned out good.

</comment><comment><USER50> I know the answer is no, but anyway I could generate a full-blown character model from this ?

<comment><USER14> Surprisingly yes!

Or rather, the answer is "no" right now, but I will bet you $500 that it'll be "yes" within ... hm ... 2 years max. And if I lower my bet to $100, I'll do 1 year max.

Let's just say it's a very lucrative, very active area of research.

One observation: facial detection gives you landmarks, and those landmarks are essentially UVs for a texture. So if you do that process repeatedly, and rotate the face slightly using latent directions, then you can back-project the result onto a 2D texture.

EDIT: Some leads: [https://twitter.com/Zergfriend/status/1283954193946906625](https://twitter.com/Zergfriend/status/1283954193946906625)

A video from July: [https://www.youtube.com/watch?v=mvk3dtdeXBE&ab_channel=Compu...](https://www.youtube.com/watch?v=mvk3dtdeXBE&ab_channel=ComputerVisionFoundationVideos)

And I saw someone use Unity to learn normal+bump+diffuse+ambient occlusion maps using ML, but sadly haven't been able to find the link yet.

This search gives lots of useful results: [https://twitter.com/search?q=stylegan%20texture&src=typed_qu...](https://twitter.com/search?q=stylegan%20texture&src=typed_query)

<comment><USER50> Very very cool. I could see this being intergrated into something like fortnight in the very near future.

If I was a better coder I'd being trying to get an Epic Grant for this. I can't imagine getting a full blown model would take more than a few hundred thousand

</comment></comment></comment><comment><USER51> That was amusing. I sort of look like I should be an extra in "Braveheart"

</comment><comment><USER52> Have you tried using an unpaired image-to-image translation algorithm, like CycleGANs?

</comment><comment><USER53> Oh god, it has difficulty to deal with long beard! My result is terrifying!

</comment><comment><USER54> It made me look rather a bit horrifying! But fun stuff, nice work!

</comment><comment><USER55> It likes to point the eyes in different directions

</comment><comment><USER56> Rate Exceeded :(

</comment><comment><USER57> Beardy people end up looking..... scary.

<comment><USER58> I saw that too. I have a rather long beard, and my toonified photo was -- horrifying.

</comment></comment><comment><USER59> Feature request: webcam support.

</comment><comment><USER60> Oh hey, more data gathering.

</comment><comment><USER61> This shit is scary

</comment><comment><USER62> glasses mess it up

</comment><comment><USER63> this is cute, but to be honest, the celebrity ones are pretty bad - they don't really look like the person nor capture their spirit, with a few exceptions: Tim Allen and Gal Gadot are quite good and Will Smith is alright. Some especially bad ones: Leo DiCaprio, Barack Obama, Johnny Depp, Keanu Reeves, Idris Elba, Ryan Gosling, Robert DeNiro

<comment><USER64> I think Leo and Scarlett are pretty bad, but the other ones seem okay?

<comment><USER64> Oh, I didn't click "more." Still, I think most of them look reasonably okay. Pretty cool!

</comment></comment></comment><comment><USER38> OMG if you toonify a toonified image it will give you nightmares this is a toonified toonified toon [https://ibb.co/PczgpH1](https://ibb.co/PczgpH1)

<comment><USER65> Like an Escher painting.</comment></comment>


Ask HN: Is 30 too old to start in software engineering or CS? - <AUTHOR> I read a lot about age bias and the emphasis on youth in the software industry, but I have no real context for it. I'm 25 right now and I graduated from college and am working, but I'm kicking myself for not majoring in CS (especially b/c I was at a school with a great CS program). I took an intro CS class my senior year, loved and excelled in it, and have taught myself quite a bit online. I'm thinking about going back to school so I can have a few years to really dive into all these CS concepts and learn them back and front. That said, I'm nervous about committing to a multi-year degree program if I'm just going to be too old to get hired anywhere. Is 25 even too old to get started? Would 30 be too old? (likely age after another 4 year degree). <comment><USER3> TL;DR: It's no picnic. Do it anyway.

I actually did that. I left a well-paying job for a slightly less well-paying job as a very junior developer.

There are definitely challenges. There's a ton of stuff to learn, from programming technique and style to version control to team planning strategies.

Probably the biggest thing I wish I'd been able to learn in school was about what it means to deliver. There's a world of difference between knowing that I can solve a problem and being able to realistically estimate the time it will take me to do so. Especially at the beginning, I lost a lot of face by saying I could do things that I couldn't.

There's a similar gap in expectations. There have been a lot of times when I've sent something into review that I thought was exactly what I was supposed to deliver, only to have to redo it later. I had to learn to ask for feedback early and often. It's also much harder than I thought to differentiate between implementation details and details that will be significant either to calling code or to my ability to build out features later.

Probably the hardest thing, though, has been the feeling that I might not be able to overcome the perception that I'm not good enough to be given important tasks. When I think about it rationally, I can satisfy myself that I am getting better and better assignments, and I'm showing I can get them done. But it's sort of demoralizing to feel like I have to prove myself all over again.

So those are the tough parts. Honestly, I still feel like it was one of the best decisions I've made. There is no way I would have been able to learn this fast or this much without the kinds of colleagues, mentors, and especially problems this experience has given me.

<comment><AUTHOR> This really resonated with me - thank you for posting it. If you don't mind me asking, what convinced your future employer to give you a chance? (and/or what convinced you that you were ready to take the plunge)

<comment><USER3> I'd known for a while that the job I was in was a dead end. I was taking a lot of online programming courses and geting involved with local meetups, etc. When a friend who'd ended up in a non-programmer role at a tech company offered to put in a good word for me for a poorly-defined 'assistant' position, I went for it. I was honest about my skill level, and it turned out that there was a lot of work that anyone sufficiently interested could do. It was a lot of pretty boring stuff at first, documentation and testing, mostly. But there's always some small project that falls exactly in the 'inexperienced new guy' sweet spot--something that everyone wants, but can do without, and no one has time to write, or else something that some manager has asked for that a project lead doesn't want to waste developer time on. After I did well enough on enough of those, the requests to do the more boring things got fewer and farther between.

In general, my job search strategy has always been to look at opportunities orthogonal to my field. I didn't look for software jobs per se--if I had to compete against CS degrees I'd have been a goner. Instead, I looked for positions where I could use the knowledge I had as a multiplier for my productivity doing something else.

It also really helps that the market for good devs is pretty competitive. It means that once you're in and you've proved yourself a bit, it's easier (and often less financially risky) for your employer to take a chance on your ability to learn than it is to hire another dev when something needs to be done.

But as I said before, this approach sort of kicks at least one can down the road; if you start off at 'assistant' level, it's hard to move up in people's perception.

</comment></comment></comment><comment><USER4> There are certainly careers in which getting started at age 30 is unlikely to bring success (gymnast, child actor), but computer science/engineering is most certainly not one of them.

You may find that when you get out of school, you don't find a lot of resonance interviewing with 20-something year olds at startups, but contrary to what it seems like here, those people are the vast minority.

It's also entirely possible that after finishing up a degree in CS you find that you don't want to actually work as a professional programmer. That's also fine (it's hard to tell what you might still find interesting in 4 years, and hopefully a big part of your education will be in gaining exposure to things you might not have otherwise thought about).

I'd say if you find CS interesting, and have the ability to pursue a CS education (which not everyone does), than go for it.

</comment><comment><USER5> I learned to code when I was 30. I was already employed at a technology company to monitor the network. So that was definite plus.

12 years later, and 3 more companies and I'm a software architect with a major vendor on a team where I'm about in the middle "age" wise.

The only time I ever felt that age played a part was an interview I did for a company that was in start up mode with chief architects that were about half my age. I had no problem walking away from that one.

<comment><AUTHOR> What helped you learn the most? Did you have a project/idea that drove you along?

<comment><USER5> That's a hard question to answer. There were a combination of motives and opportunities. Motives were things like a strong desire to prove myself combined with an anger at the lob sided salaries.

Opportunities were a major application that was written so badly (in java) that I learned a lot by fixing and refactoring. A poor social life that came from a divorce and moving states gave me an opportunity to spend an additional 40+ hours a week after work coding and experimenting and seeing what I could do.

In a more general sense. Giving myself a goal and working on figuring out how to achieve it in code was far better for me then merely reading a text.

</comment></comment></comment><comment><USER6> I'll echo the sentiment that you wouldn't be too old, but question your approach. Why get the degree at this point? Why not continue to learn through self-study and demonstrate your ability through open source?

Unless you want to be a bonafide computer scientist (i.e. working towards a career in academia or otherwise pushing the boundaries of current knowledge of the field), it seems like pursuing a second degree may do little else but exacerbate the age concerns you're already having.

In my opinion you'd be better off starting somewhere as a junior programmer now and honing your craft on the job (as you'd have to do after finishing your degree anyway).

<comment><AUTHOR> Honestly - I feel like I don't have enough time with work to be able to "prove" myself enough to get hired. (and also when I study by myself, I get about 0 feedback from others, so I feel like I'm learning terrible practices). I guess two specific questions: 1 - how can I "prove" myself? and 2 - <USER2> kind of places actually take junior programmers?

</comment></comment><comment><USER7> Hell no, it's not too old. The Web is a meritocracy, that's what they always say. I actually started when I was 37.

A few things you might want to keep in mind: You can learn just as much online these days as you can in school, for a fraction of the cost. A CS degree can be found on Udemy for a reasonable price.

Your 10,000 hours starts now. Build things, be curious. Build things even if you think they're stupid. It's part of the learning process.

Having a website, or an app, and a GitHub repo will much farther to getting you hired than a degree. What will help you even more than those things are a good attitude, an open mind, a humble spirit, and an ability to learn.

Best of luck!

</comment><comment><USER8> Absolutely not!

I'm one of the co-founders of Dev Bootcamp (<http://devbootcamp.com>) and the median age for our students is 28-32. We've graduated dozens of students over the age of 30 who learned to program at DBC and they went on to work at all sorts of awesome places.

Felix Tsai was one of our students last summer and was 42 when he entered DBC. He's now an engineer at TapJoy in San Francisco.

About Felix: [http://devbootcamp.com/2013/02/05/felix-tsai-of-tapjoy-on- le...](http://devbootcamp.com/2013/02/05/felix-tsai-of-tapjoy-on-learning-to- program-mid-career/)

<comment><USER9> > Felix Tsai was one of our students last summer and was 42 when he entered > DBC. He's now an engineer at TapJoy in San Francisco.

If you know, could you please tell me if Mr. Tsai had any other qualifications before joining your program? Did he have a Science or IT degree, or have any relevant qualifications?

<comment><USER8> I linked to the blog post because it's a whole article about him and his past! Hah.

He was a former attorney.

<comment><USER9> Wow, no idea how I missed that.

/* Obligatory excuse about how I haven't had my morning cuppa yet */

</comment></comment></comment></comment><comment><USER10> As many people have said, no, you're not too old to get started. And despite what some people might say, a multi-year degree program, with a decent GPA, is a great way of showing employers that you're a decent potential candidate.

That said, software engineering is one of the fields you can get employment without a degree, provided you can 'show your work'. The hard part is building up your skills in a way that can easily be demonstrated. The common wisdom these days is to create a github profile, build some interesting things, commit to some open-source libraries, and use your profile as a resume of sorts.

Here's interesting article on being a well-rounded programmer: [http://jasonrudolph.com/blog/2011/08/09/programming- achievem...](http://jasonrudolph.com/blog/2011/08/09/programming-achievements- how-to-level-up-as-a-developer/)

We're also in a 'golden age' of self-guided learning, with online tools to help learning galore, here are a few:

<http://codecademy.com> <http://www.codeschool.com/> <https://www.khanacademy.org/cs>

Also, get a few decent books on "Programming 101". Common wisdom suggests you learn C, one of Ruby/Python, Java, and a functional language like Haskell. Here are some good books to learn from:

The C Programming Language (some people say you should start here, I'm one of them!): [http://www.amazon.com/Programming-Language-2nd-Brian- Kernigh...](http://www.amazon.com/Programming-Language-2nd-Brian- Kernighan/dp/0131103628)

Learning Python: [http://www.amazon.com/Learning-Python-Powerful-Object- Orient...](http://www.amazon.com/Learning-Python-Powerful-Object-Oriented- Programming/dp/0596158068/ref=pd_sim_b_5)

Learning Java: [http://www.amazon.com/Learning-Java-Patrick- Niemeyer/dp/0596...](http://www.amazon.com/Learning-Java-Patrick- Niemeyer/dp/0596008732/ref=sr_1_1?s=books&ie=UTF8&qid=1370135112&sr=1-1&keywords=oreilly+java)

I hope you do choose programming as a career, its been very rewarding for me :)

<comment><AUTHOR> Thank you for taking the time to put together the links! The "show your work" part feels like the hardest, but I guess that's just something I have to push towards to figure out. As an aside, do you know anyone who's learned successfully from codecademy/codeschool? I love the idea of them, they just seem really simplistic.

<comment><USER11> I'm injecting my own language bias here, and I must admit that this is not an opinion that everyone agrees with, but I think you're better with Scala or Clojure than with Java. (Both run on the JVM, so you end up learning the Java ecosystem.)

Scala is a "better Java" and you can learn both the JVM and functional programming (take Odersky's course on Coursera). Clojure is a great Lisp but the Java stuff will be very confusing if you haven't seen it before (the JVM- interop functions like proxy, gen-class, and reify don't have the easiest APIs).

This (Structure and Interpretation of Computer Programs) is a great book to get started on the deeper aspects of CS: <http://mitpress.mit.edu/sicp/full- text/book/book.html>

Also, I like this one: [http://www.amazon.com/Concepts-Techniques-Models- Computer-Pr...](http://www.amazon.com/Concepts-Techniques-Models-Computer- Programming/dp/0262220695)

</comment></comment></comment><comment><USER12> I started software development at your age, despite taking some CS classes in college when I was 19. I am now 30 years old (sigh) and had jobs making plenty of money (if you care about that kind of thing).

In fact, I've done so much of it over the last 5 years that I'm trying to get out of it. But that's another story.

From being unable to write a single line of reasonable code to being a Data Scientist making a solid six figure salary took me four years, a bunch of work, and being a very good networker. That last part is pretty important.

Oh, and I don't have a degree.

</comment><comment><USER13> I hope not. I just started my MSSWE program at 36. If I didn't enroll in an academic program, family life and full time work would keep me from making the transition.

<comment><AUTHOR> I feel that. What spurred you to take the plunge?

</comment></comment><comment><USER14> I started teaching myself programming at 23, and I'm now 25. You are far from too old, but the real issue is time, motivation, and aptitude. At this point in your life do you have the time to go back and get a CS degree? Or learn enough online that you can build a portfolio? If you can get a junior position early, then you can learn and get paid at the same time which is the optimal situation, but if you cannot do that, you will need to invest significant time and energy learning. Can you find the time to do that at this point in your life?

As others have said, I think if you don't get a CS degree, you really need to focus on results. Anyone can give programming a shot these days, but only some will ever be able to ship decent software and get paid to do it. Software development is ideally a meritocratic endeavor, so if you can develop the skills, age shouldn't hold you back. What would hold you back is not having enough time, motivation, or aptitude to develop the skills needed to get a job. Even if you can't get a job though, programming is a useful life skill, so I personally think it's worth a shot if you can find the time.

</comment><comment><USER15> If you already have an undergrad degree get a masters not another 4year degree. It's a little harder than an undergrad degree but not all that much.

<comment><AUTHOR> Is [USNews & World Report]([http://grad- schools.usnews.rankingsandreviews.com/best-gradu...](http://grad- schools.usnews.rankingsandreviews.com/best-graduate-schools/top-science- schools/computer-science-rankings)) a good source to decide which Masters Programs are legit and which are just junk? Seems like there's a lot of crap around...

<comment><USER16> The best advice I can give is to go to school websites and look at their course catalog. Specifically, look at the professors teaching the core courses and whether the courses you'll be taking are the same courses that undergraduates and PhD students at the university take.

Many masters programs are what one of my professors calls "mercinary-masters". Their job is to bring in money in exchange for a piece of paper. You're taught by adjuncts, you take courses that are watered down from the courses that undergraduates take, some of the professors might not even have degrees related to computer science, etc. Your purpose is to subsidise the undergrads and PhD students and the main criteria for admission is whether they think you can get passing remarks to get the degree.

The US News rankings are for doctoral programs, not masters. The rankings are formulated very simplistically via a survey asking people, "how good is the program at School X". So, they aren't such a good source. Plus, with your background, some schools aren't going to want you. That isn't a dig at you - you're re-training and some schools only do PhDs (with masters for those who drop out) and other schools don't do conversion-style masters.

If you have more specific questions, I might be able to help. Still, the best advice I can give is to make sure that you're not getting segregated off into a special class of cash-cow masters students who are being given a watered- down experience in exchange for money. It's easy to look through course catalogs and who teaches the courses you'll be taking and look at the professor web pages and see where you're getting someone brought on board to teach a course and where you're getting faculty.

<comment> mc-lovin I agree that you want to ensure that the coursework is of sufficient quality. However, I wouldn't avoid terminal masters degrees with no financial support in themselves. E.g. Stanford's MS in CS falls into this category.

Edit: not that the parent post was implying that such programs should be avoided, bit it is common advice.

</comment></comment></comment></comment><comment><USER17> I'm about to be 32, and I only started really studying programming (via online tutorials and physical how-to books) a little over a year & 1/2 ago. I was already solid in my html and css, picked up ruby first, then jumped to a bit of php, then back to ruby and rails, and finally some jquery and responsive design. I did this over a year, and was supported by my loving fiance (also unemployment comp and a part-time job after that), which was a tough financial struggle for that yea . I came from the construction sector (repair services) for 8 years. My fiance works for a successful startup, who were gracious enough to allow me to spend my studying time in their offices (and occasionally ask questions). 4 months ago, I was contacted by a recruiter via an online job site for a jr. rails dev position, in which I now am gainfully employed. I'm working with rails, and being utilized for my knowledge in responsive design with our overhaul project. I'm now able to help save for our wedding and honeymoon and provide groceries of more than soup.

</comment><comment><USER18> No, especially since you're 25. Plenty of people came into software engineering late, even people who are 'famous' in the field now.

I'm actually 30 (well 31) and feel like I'm starting over again very year or two given how fast things move, and have just got on to a MSc software engineering course, so.. why not? :)

</comment><comment><USER19> I started to learn software dev at 26. I could barely write a coherent HTML page.

I'm now 30 and work for a major SV website. I am a bit older than most of my colleagues, but I keep up just fine. Like you, I wish I had gotten that CS degree as well, but you only let your mistakes defeat you when you stop trying.

<comment><AUTHOR> What did you find most effective for teaching yourself? Did you have some driving "thing" that you wanted to build/do?

<comment><USER19> I signed up for work I couldn't do(!). This sounds scary and awful, but basically I dug in and learned as much as I needed to to write basic applications, then put myself out there for clients. I sold my services for a fraction of what clients would normally pay.

Now, before everyone starts freaking out, the trick this whole situation is that you _must_ be willing to learn how to do everything the __right way __. No cutting corners, no copy pasta. Treat this like a magical classroom lab where they actually pay _you_.

You will feel stress. You will work harder than you've ever worked. I was putting in probably 100 hours a week between my day job and this work. But I also got to a point where I could really write code and archetect software in about 2 years time.

It really helps have a close friend who you can turn to when you need someone to help guide you a bit, but if you don't have one, try to get ingrained in some dev forums.

</comment></comment></comment><comment><USER20> If you majored in something quantitative there is just no need to take CS courses in a traditional college format. Online courses are on the same level or better if you can study by yourself and know enough math.

</comment><comment><USER21> In short, no. Employers are not allowed to ask for your age, it gives them grounds to discriminate against if you tell them how old you are. Don't put your date of birth on your CV.

Good luck! :)

<comment><USER19> As sound as this advice is, one can generally infer one's age by the makeup of their CV (college graduation date, years of experience, positions held, etc). To me it doesn't matter how old someone is, but I have a pretty good idea of their age even before I've met or talked with them.

</comment></comment><comment><USER22> At 30 the only thing you are too old to start is a path to becoming a professional dancer or athlete. I'm 41, just starting to learn programming and I love it so I don't really give a fuck if I'm 'too old'. This debate is tiresome (because I'm old :P) and its important to think of writing code like any other type of writing. If your brain, eyes, and fingers are in good shape then you're fine. You will be judged on the merits of what you write and create. If you love it, do it.

</comment><comment><USER23> It's definitely not too late, but going back to school to do a CS degree might not be the most effective way to do the transition. A CS degree course can be a lot of fun, but it's not focused on readying you to working in technology. Now that you've already checked the degree box, you can learn how to program independently and save yourself a lot of time and money.

</comment><comment><USER24> I'm 27 (28 later this month) and I'm just finishing semester one of a CS degree. If all goes well I should be finished by 30.

I kind of worked backwards though - I have 5 years software development experience, but wanted to get some qualifications so I could better dictate my working conditions (remote work, salary etc).

I say go for it. You're younger than I, and I'm not too worried about my age :)

<comment><AUTHOR> Unlike others, sounds like you feel like there is a difference between having a CS degree and not. What sort of differences do you find? If you could go back, would you have started out with a degree?

<comment><USER24> There's a few things that have driven me to get a CS degree:

\- Salary: I have found it difficult to get out of the 50-60k bracket without qualifications, and I personally feel that for my ability, I am getting ripped off. Also, my full-time job was grating me quite a lot. I was working under my brother for one, and my fellow programmers were not very good. I didn't really enjoy going to work. It didn't challenge me.

\- Family: No one in my immediate family has a degree, and I mean to change that. It might seem a silly reason, but my family is right behind me and with it comes a sense of pride.

\- Skill: Although I am confident in my ability in certain areas, I desire to learn more of the lower level skills like compiler design, algorithms etc that I didn't have time to learn on my own. Focusing on it completely seemed the only way to succeed for me personally.

\- Diversity: I felt as though I was in a hole with regards to the technology I was working with, and had no perceivable exit strategy. I want to explore more than just CRUD applications. It also gives me the chance to try out things I would never had even considered looking at, such as circuit design.

\- Networking: Learn the craft alongside others who are passionate about the same things. I know there are other ways to achieve this, but it comes as an added benefit.

</comment></comment></comment><comment><USER25> I'm just going to leave these inspirational quotes here:

"a year from now you will wish you had started today."

"i never regret when i do it, i always regret when i don't."

"there are seven days in the week and someday isn't one of them."

"every accomplishment starts with the decision to try."

"if you don't build your dream, someone else will hire you to help them build theirs."

and last, but not least:

"quick slackin' & make shit happen!"

</comment><comment><USER26> Instead of going back to school, why don't you propose software projects for your current job? You may not get compensated for the time spent, but you are enhancing your current job and getting real field experience a fresh school leaver cannot offer.

</comment><comment><USER27> Nope. Get going.

<comment><USER28> And since you already have a bachelor's in something else (I assume), it probably won't take you four years to finish the CS degree anyway.

</comment></comment><comment><USER29> I'm in Bostons Launch Academy, which is Bostons version of Dev Bootcamp, and we have a few 30+ guys in our class that are killing it.

</comment><comment><USER30> No, it's not too old. And the degree isn't required (although it may be a great way to start).

</comment><comment><USER31> I'm 25 as well. I share a bit of my own experience, in the hopes that you may find lessons (both positive and negative) from it. I don't pretend that anyone should consciously follow the path I took, but it did work out pretty well for me.

I graduated college with a degree in electrical engineering not really knowing anything about what I wanted to do for a living or where I wanted to be in five or ten years. So I sort of drifted into a master's program, again in the same field, hoping to figure out what I was doing before I was forced to confront the job market or academia proper.

I didn't realize until the second half of my first year at that graduate program that I enjoyed the CS courses I was taking as electives far more than the normal engineering courses. So I ended up taking my second year and throwing all my effort into taking as many CS classes (which were cross-listed departmentally) as I could: operating systems, databases, compilers, etc. I made some stupid mistakes choosing some classes that turned out to be neither interesting nor relevant, and skipping on classes that would have been extremely useful or informative.

When I graduated, I took a position at a startup in the area, doing work that fell between the interface of EE and CS. I realized that I wasn't too fond of the work or the company (for various reasons), and so I spent months teaching myself the practical and theoretical stuff I had missed out at school, whether out of inexperience, disinterest, or sheer decision-making ineptitude. Some of this stuff was useful for my position at the time, other topics were completely exploratory in nature. And when I was ready, I started sending out my resume and interviewing for positions. I did get a new job, and I'm a software engineer at a well-regarded mid-size tech company in Silicon Valley right now.

Some thoughts regarding your position:

\- CS is one of the fields with the lowest barrier to self-teaching. You don't need expensive lab equipment or fieldwork - just software, much of which is freely available, an ordinary computer, and enough motivation to actually utilize both.

\- You don't need a 4 year degree. In the US a lot of schools won't even allow you to enter their bachelors programs if you already have one. A BS would be a waste of your time.

\- The MS degree isn't a prerequisite. Build something substantial, and people will take notice. If you don't have anything you can show them, the degree can sometimes be useful. I'm not proud of this and it's actually really shitty, but the name of the school on your resume may sometimes make the difference between people taking a look at it and throwing it out (at least from my experience).

\- If you do go back for formal schooling know what classes you should take, in order to acquire knowledge you need to have. You mention data structures and algorithms in a comment earlier; there are classes which focus on those; there are also classes that focus on discrete math, statistics, and other foundational topics. You should build an OS and a compiler while you're there. I always thought this was a thought-provoking read: <http://matt.might.net/articles/what-cs-majors-should-know/>

\- A lot of MS programs are coursework programs; they've been charitably described as financially lucrative to their host institutions. Mine almost certainly would have qualified (both the EE and CS programs). This is not necessarily poison, but it does mean that if you attend, you should make the most out of the classes you take.

\- If you are interested in working at certain companies, see if you can get someone to give you an internal referral once you're ready to begin the job application and interview process. A lot of companies (again, this is a controversial topic) seem to give more weight to internal referrals than unsolicited submissions. Contact with most of the companies I was looking at started either when a recruiter reached out, or when I asked someone I knew to put in a word. If you feel that people are loath to consider you due to your late start/lack of formal credentials this may be a way to offset that.

Finally, the fact that you are considering this move because of passion, interest, and demonstrated competence bodes really well for you. Best of luck!

</comment><comment><USER11> First of all, you're going to be starting at 25, not 30. Don't spend 5 years doing only school. Start building things right away.

You might find that another 4-year second-undergrad is time-inefficient (and probably expensive). It might be better to study math and take a few undergrad courses at a university-- that'll take a year or two and you can work while you do that-- then go back for a Master's.

The good news: despite the ageism that our industry is known for (which is overrepresented on HN due to the high proportion of VC-istan programmers here) there's no evidence that people become worse programmers when they're older. In fact, it's clearly the opposite. In 2013, science has reached no consensus regarding the age of cognitive peak; it's somewhere between 20 and 65, but no one's sure where. It seems to be very individual, with some people peaking early and some late.

The bad news: if you want to work at the VC darling companies, you're probably screwed. Ageism is severe there. People will think you're a loser, in those companies, if you're not an executive by 35. But there are a lot of quite frankly better options where no one's going to think twice about your age, especially since you're a long way away from being old.

<comment><USER32> "there are a lot of quite frankly better options where no one's going to think twice about your age"

What are those options?

<comment><USER11> There's a lot out there that is not in the VC-funded ecosystem. Sure, most corporate jobs are crap whereever one goes, but the odds aren't any worse than in VC-istan, and the ageism problem is less severe.

For one example, banking is considered ageist (most people retire by 50-55) by society-at-large standards but no one is going to look askance at you for being 40 and a non-managerial programmer. You should be at least VP by that age (and preferably ED/MD) but you don't have to have reports.

One nice thing Wall Street has done for its top (non-managerial) traders and programmers is use the title system to validate non-managerial high performers: you can be a "Managing Director" without having to manage other people. If you're going to have titles, you have to start giving them to engineers... even though a part of me would like to see titles just not exist.

</comment></comment></comment><comment><USER33> Yes.</comment>


Show HN: Jobder – Find the job match your open source contribution - <AUTHOR> https://www.jobder.net/ <comment><USER2> It wants organisation access. Simply put, that's not my call to make. Can you remove that or make it optional?

<comment><AUTHOR> Yep, We don't need this now. I will remote it now.

</comment></comment><comment><AUTHOR> When I contributing to django, I meet great people like Tim Graham and Simon Charette, they are both excellent engineers and always nice to the newbie. I'm sure they are great employees that every company searches for as well as everyone love to work with them. So I built www.jobder.net. Which let open source contributors to find job match their work.

Products just time to time, long live open source.

</comment><comment><USER3> The copy is a bit off. Maybe consider:

"Find a job that matches your open source contributions"

or,

"Find jobs that match your open source contributions"

<comment><AUTHOR> Thank you, I will fix it now.

</comment></comment><comment><AUTHOR> I'm sorry that GitHub does not allow read-only user's public repos. [https://github.com/jollygoodcode/jollygoodcode.github.io/iss...](https://github.com/jollygoodcode/jollygoodcode.github.io/issues/6)

</comment><comment><USER4> Nice idea.

Name not so great for Spanish speakers [https://www.urbandictionary.com/define.php?term=joder](https://www.urbandictionary.com/define.php?term=joder)

<comment><AUTHOR> Thank you, maybe I should make a side project to detect this. :D

<comment><USER5> There's one already somewhere, someone mentioned it in one of these cases here.</comment></comment></comment>


The Gendering of Technology - <AUTHOR> https://medium.com/tech-culture-briefs/3570e446ec3c

<comment><USER2> You think tech has it bad? Try banking: [http://hoh.rollcall.com/somebody- spot-janet-yellen-some-new-...](http://hoh.rollcall.com/somebody-spot-janet- yellen-some-new-threads/)

<comment><AUTHOR> At least banking isn't pretending it's a "meritocracy."</comment></comment>


Show HN: make git ignore certain changed files in repo - <AUTHOR> https://gist.github.com/1238452

<comment><USER2> These are the aliases I have set in my .gitconfig for a similar (same?) purpose:

      [alias]
      ignore = !git update-index --assume-unchanged
      unignore = !git update-index --no-assume-unchanged
      ignored = !git ls-files -v | grep "^[[:lower:]]"

Usage: `git ignore foo.rb`, `git unignore foo.rb`; `git ignored` to list all currently ignored files.

<comment><AUTHOR> Awesome, that'll do as well, thanks

</comment></comment><comment><USER3> For those who aren't familiar with the git subcommand, `git update-index --[no-]assume-unchanged` is at the core of this script.

It's useful for ignoring checked-in files _locally_ , such as overriding app config settings for a local dev server.

<comment><USER4> How is this better than creating a local branch ?

<comment><AUTHOR> This has nothing to do with branching. Here is the idea I tried to replicate [http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn- dug-...](http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug- commit.html#tsvn-dug-commit-ignore)

</comment></comment></comment><comment><USER5> I'm a little confused by what this does... Can't you just not 'git add' a file to have git ignore its changes?

<comment><AUTHOR> The file still shows up in status and, the most important, changes from file still shows up in 'add|checkout|reset -p' which I use all the time.

</comment></comment><comment><USER6> I'm going to try this next week; this is something we could use at work.

Plus, can't beat the license.

<comment><AUTHOR> I'd be happy to hear your testimonials!

I use it at work everyday, it comes in very handy when you need to keep some changes only specific to your local setup (monkey patching, javascript page speed measurements, weird php local config stuff, etc, etc).

</comment></comment><comment><USER7> Nice! I remember being surprised that .gitignore didn't do this.

<comment><AUTHOR> Right, gitignore can only help with untracked files, not tracked and changed.

Back in the day when I was using SVN, its ignore-on-commit feature (GUI only, but anyway) was incredibly useful.</comment></comment>


Pseudo: A 2.5d Roguelike in Lisp - <AUTHOR> http://pseudo.ahungry.com/

<comment><USER2> Your Common Lisp glyphs library [1] is cool. Once I grokked the syntax it was much more readable.

[1] [https://github.com/ahungry/glyphs/](https://github.com/ahungry/glyphs/)

</comment><comment><USER3> You might want to consider making glyphs a subproject of pseudo, then you can get both with a clone --recursive and you can insure that the pseudo checkout has the same version as it is expecting.

</comment><comment><USER4> I can't connect to multiplayer... :(</comment>


Caching PHP objects: how to do it in 4 easy steps - <AUTHOR> http://imgiseverything.co.uk/2008/05/23/caching-php-objects-cache/ <comment><USER2> Dangerous code in that example:

Step1: Don't chmod a directory 777. How about 770 (or maybe 775) with an appropriate owner and group. There is just no reason to allow a stranger or zero privilege nobody/nogroup hack to write arbitrary data into your cache.

Step3: There is a race condition here that can corrupt your cache and cause sudden catastrophic performance problems. When the cache expires, until someone manages to rewrite the cache all readers will try to regenerate it and rewrite it. If you used this technique because you had database load issues you are in for a thumping. Worse, each will then write the cache, probably about the same time since they will be in lock step from the database IO, with an fopen/fwrite/fclose. You could end up with a muddle of a file.

To fix: you could use some sort of lock to ensure only one reader tries to rebuild the cache, but that scares some programmers. For writing the file you should ALWAYS write to a temporary, unique filename, close, then rename the file to the proper filename. It is a tiny nuisance, but rename is atomic in unix land and no one will get a partially written file or one muddled by multiple writers.

(For bonus performance, I'd add a random number to each "too old" check. That way the first process that decides it was too old would start the rebuild of the cache, but most of its temporal peers would probably not think it was too old and would happily use the cache. Otherwise you get a bunch of processes waiting for the rebuild.)

Step 4: If you are on Apache. It can make things more fragile by spreading your site across the filesystems, but I prefer to put files like this off in an area of filesystem not under docroot. The danger is that when someone goes to move the site, they have to know about these other files as well.

And finally: benchmark before and after. This can be a big performance win, but sometimes you can be surprised.

</comment><comment><USER3> I could only stand that yellow background for about 5 seconds before I hit the back button.

</comment><comment><USER4> un/serializing to file system. Why is this better than letting mysql do the disk I/O for you?</comment>


California Drought Tests History of Endless Growth - <AUTHOR> http://www.nytimes.com/2015/04/05/us/california-drought-tests-history-of-endless-growth.html?hp&action=click&pgtype=Homepage&module=span-ab-lede-package-region&region=top-news&WT.nav=top-news&_r=0

<comment><USER2> Absolutely zero mention that 80% of the water is consumed by agriculture? Is that what we considered responsible reporting these days?

<comment><USER3> From the article: "But even a significant drop in residential water use will not move the consumption needle nearly as much as even a small reduction by farmers. Of all the surface water consumed in the state, roughly 80 percent is earmarked for the agricultural sector."</comment></comment>


Julian Assange extradition judge refuses request for delay - <AUTHOR> https://www.theguardian.com/media/2019/oct/21/julian-assange-extradition-judge-refuses-request-for-delay-wikileaks <comment><USER2> Just think: if he'd not tried to flee rape allegations in Sweden, he'd be free (or at least in a much more favourable situation) right now. Despite all the crap he said, being extradited to Sweden would have made extradition to the US _less_ likely: two legal systems would need to approve (Sweden and UK), not just the UK.

<comment><USER3> >Despite all the crap he said, being extradited to Sweden would have made extradition to the US less likely

He was called crazy for stating that it was a ruse to get him into the hands of the US. Given that A) he had access to better legal advice than is generally dispensed by random strangers on the internet and B) the part about the US trying to snare him in spite of _multiple_ denials ended up being 100% true I'm inclined to believe that he was probably on the mark.

<comment><USER4> >He was called crazy for stating that it was a ruse to get him into the hands of the US.

And he was crazy. Fleeing to the UK, America's staunches ally with a long history of cooperation with US law enforcement, especially in cases of extradition, in order to avoid possible extradition in Sweden is simply not sane.

Even taking the assumptions you're working with, that the Sweden charges were a ruse to allow Assange to be extradited, the argument fails because Assange fled this supposed conspiracy to a jurisdiction that is 100% guaranteed to cooperate in extraditing him to the US.

>he had access to better legal advice than is generally dispensed by random strangers on the internet

Considering the predicament his apparently genius legal counsel's advice put him in over the last decade, I'd say that's not a given at all. It seems much more like he's acting out of panic and desperation rather than some carefully- crafted legal strategy.

<comment><USER5> He fled to the Ecuadorian embassy in the UK. Big difference.

</comment></comment></comment></comment><comment><USER6> >>... and warned of a bleak future for journalists publishing "truthful information" contrary to US interests.

I wonder if that wasn't always the case.

<comment><USER7> I don't want to live in a world were "journalists" just dump any sensitive information they get their hands out with complete disregard for what harms it can cause, and doing nothing to actually vet the information beforehand.

If that's a "bleak future" then let it be.

<comment><USER6> Yeah, we need a master to vet and gate the information before it is released to the public, right?

<comment><USER7> The Guardian, WP and NYT did just fine with Snowden's material.

So I guess in your mind it would also be perfectly fine if someone tool all your data including your passwords and released it to the public, right?

<comment><USER8> Re filters: How would you know? Maybe you dont want to know?

[https://i.imgur.com/VUdcIou.jpg](https://i.imgur.com/VUdcIou.jpg)

<comment><USER7> If you really believe that three different papers actively hit crucial information, then there's not much I can say that would convince you otherwise honestly.

<comment><USER8> What if you just didnt check? It's the rule, not the exception that these orginizations are filters. Access to original sources breaks their hold on deciding what is real.

[https://wikileaks.org/podesta- emails/emailid/3599](https://wikileaks.org/podesta-emails/emailid/3599) [https://wikileaks.org/podesta- emails/emailid/10052](https://wikileaks.org/podesta-emails/emailid/10052) [https://wikileaks.org/podesta- emails/emailid/50332](https://wikileaks.org/podesta-emails/emailid/50332) [https://wikileaks.org/podesta- emails/emailid/32795](https://wikileaks.org/podesta-emails/emailid/32795)

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> 40 points 10 comments 1 hour and not on the front page.

Nothing to see here folks.

</comment><comment><USER10> Of course he does</comment>


Gentlest Introduction to Tensorflow - <AUTHOR> https://medium.com/@khor/the-gentlest-introduction-to-tensorflow-248dc871a224 <comment><AUTHOR> I wrote this to supplement the original presentation slides ([http://www.slideshare.net/KhorSoonHin/gentlest- introduction-...](http://www.slideshare.net/KhorSoonHin/gentlest-introduction- to-tensorflow)) and video ([https://youtu.be/dYhrCUFN0eM](https://youtu.be/dYhrCUFN0eM)) at a Tensorflow meetup because the slides and video got more love than I ever expected. Enjoy and let me know what I didn't do well.</comment>


Get Rid of the State-Tax Deduction Altogether - <AUTHOR> https://www.bloomberg.com/opinion/articles/2019-02-28/salt-deduction-has-to-go <comment><USER2> I would have been onboard with the deduction cap if the revenue had actually been used to lower the deficit and help sustain existing expenditures-- regardless of whether I personally agreed with those expenditures. Instead, it was used to partially offset a corporate tax deduction in a bill which significantly expanded the deficit.

The bill effectively transfers wealth from the top 10-20%, as well as the top 98-99% of future generations' through their debt burden, and passes it on to the top 1-2%, putting a few bucks in the pockets of the bottom 50% for good measure. This is banana republic politics at its finest.

I'm also not enamored of California transferring its wealth to states which continue supporting inherently broken fiscal policies in Washington. Texas gets a pass, but almost every other conservative-leaning state uses federal monies to backstop their own fiscal failures. There's nothing new about rich states helping poor states--its the whole point of the union--but its problematic when the poor states sustain such a fiscally craven political culture.

The benefit of the SALT deduction is that it permits states to raise more revenue, and because states can't run long-term deficits there's more fiscal accountability. Making it easier for the Federal government to raise revenue isn't actually more efficient if the Federal government will simply use it as a pretense to lower tax rates _and_ (mindbogglingly) run even greater deficits!</comment>


Show HN: Find Praciting Doctors Through Their Research Papers - <AUTHOR> https://www.opendoctor.io/research/?research_papers=mohs+surgery&zip=94109&search=search <comment><AUTHOR> Hi!

This simple site lets you search for practicing doctors through their research. An example, you are about to have "Mohs Surgery", this tool will let you find doctors who have published research on this procedure _AND_ are actual practicing doctors in your area.

If anyone finds it useful, I will clean up the UI.

A github star will keep me motivated :)

[https://github.com/james-ransom/opendoctor.io](https://github.com/james- ransom/opendoctor.io)

</comment><comment><USER2> The title here is wrong. It should say Find Practicing", can you edit or re- post?

<comment><AUTHOR> no. :(</comment></comment>


9th Circuit court rules the government can use GPS to track you - <AUTHOR> http://www.time.com/time/nation/article/0,8599,2013150,00.html <comment><USER2> This is currently the rule in a majority of US jurisdictions.

The 9th Circuit did not make a ruling. Rather, they declined to hear the case because California law is already on point and they do not wish to change the law.

I am displeased with the attorney writing the article for another reason. He wrote, "The government's intrusion on property just a few feet away was clearly in this zone of privacy." The Supreme Court articulated 4 factors to determine zone of privacy, and proximity to the home is only one of the four. United States v. Dunn, 480 U.S. 294 (1987),

Curtliage does not mean area close to your house. It means the area that a person can readily see (sort of). If I can see your front door from the street, then you have no reasonable expectation of privacy there. If I can see your backyard when I fly over in a small airplane at a normal heigh, you have no reasonable expectation of privacy there. California v. Ciraolo, 476 U.S. 207 (1986).

I am not saying that I agree with this. All I am saying is that this is the current law and it is not new.

<comment><USER3> I think the more important issue Judge Kozinski brings up in his dissent is the increasing approval of the use of super-human observational powers by the police. The rule used to be that what the police can readily see--literally, see, with their eyes--had no expectation of privacy. Now it's whatever information the police can gather using increasingly unlimited technological means, like GPS trackers, only vaguely related to that standard.

Actual dissent: [http://www.leagle.com/unsecure/page.htm?shortname=infco20100...](http://www.leagle.com/unsecure/page.htm?shortname=infco20100812145)

<comment><USER2> I agree that this is area of concern for privacy. Right now the general standard on what police can use for technology is that they can use the same technology that is readily available to the general public. It isn't an unlimited-means standard.

Thermo-imaging equipment to detect marijuana growers is not readily available, so it cannot be used.

Telephoto lenses can be bought by anyone, so they can be used.

GPS is readily available, so it can be used.

The standard certainly is a moving target. I don't agree with its wisdom, but that is the law as it stands.

<comment><USER3> Pinging the location of your cell phone is a capability used by police without a warrant (in some jurisdictions) that is not available to the general public.

</comment></comment></comment></comment><comment><USER4> If you want to get the ruling overturned, wait for your congress critter to park their vehicle on a public street and do the same thing, then setup a blog that shows the information online.

</comment><comment><USER5> The court is wrong on the privacy issue. Setting that issue aside, isn't what the police did in this case an illegal act of vandalism? If you attach a bumper sticker to a police car without the knowledge and consent of the police department that owns it, that is vandalism and you can be prosecuted for it. How is this unauthorized alteration of private property any different?

<comment><USER6> > How is this unauthorized alteration of private property any different?

Their car license plates are marked "exempt" - they take that seriously....

<comment><USER7> "Exempt" as in "exempt from vehicle license tax."

<comment><USER6> exempt from vehicle license tax is the de jure meaning. The de facto meaning is much more broad.

</comment></comment></comment></comment><comment><USER8> Is it really that hard for them to get warrants? I don't get all these shenanigans to avoid warrants. They should be able to easily make the case that this person was suspected of selling drugs and that the GPS data would help prove this.

I don't understand the law involved in getting and using a warrant, can someone clarify the difficulties that make it necessary to bypass it?

<comment><USER2> This is how you get a search warrant: A person makes an affidavit in front of a neutral and detached magistrate, who then determines that a reasonable person would conclude that it was more likely than not that incriminating evidence of the named items or persons would be found in the specifically named place to be searched.

Lots of legal buzzwords there. Each of those buzzwords adds overheard in obtaining a warrant. Police are happy to avoid that overheard whenever possible. That is the motivation to avoid obtaining search warrants. Plus, a privacy minded judge might deny you. With warrant-requirement-exceptions you don't run the risk of being denied a search. You just do it.

</comment></comment><comment><USER9> I have a lot more respect for Chief Judge Alex Kozinski. His comments on fences and poor people are a nice rational argument to prove why this ruling is so unfair.

</comment><comment><USER10> George Orwell 1984

exhibit A: the two way view-screens, you never know when your being watched.

exhibit B: global tracking system, from when you come out of your mother to your grave.

We can only hope that going forward, men will resolve to behave like angels so that they will not abuse the power we are giving them with technology.</comment>


GraphQL Query Generator - <AUTHOR> https://blog.graphqleditor.com/graphql-query-generator/ <comment><USER2> We're looking at adopting GraphQL and for writing a CRUD app it seems insane. Being able to project out individual fields seems like a niche benefit for bandwidth constrained devices. Instead of doing joins in an RDBMS you write a dataloader which merges select queries. The queries themselves seem like a lot of repetition in the client codebase, plus the complexity of the server-side implementation.

Am I alone in thinking this is a ridiculous solution to replace traditional REST endpoints?

<comment><USER3> >Am I alone in thinking this is a ridiculous solution to replace traditional REST endpoints?

You're not alone. I went down the GraphQL path a year and a half ago. I was telling everyone it was going to be the future, then I got tired. GraphQL requires a lot of configuration and setup to get working right. The decent implementations of GraphQL are all proprietary solutions like Apollo. When you feel like you're spending half your time setting up a simple backend and API, it's a red flag.

Despite efforts made to improve GraphQL, things like caching are still a nightmare are in comparison to the out-of-the-box browser caching you get with a traditional REST endpoint (because GraphQL implementations all use POST by default). No plugin I tried for Apollo gave me proper caching, I even tried to hack something together at one point.

The smaller payloads are definitely great and being able to query for specific pieces of data is fantastic, but it's a lot of work and it's not perfect. I found using it can make a simple app incredibly complex, then you have to maintain the schemas, implementing data loaders requires some work to get done right. There is a reason a lot of backend developers push back against the suggestion of using GraphQL.

Don't get me started on things like authentication, file uploads and protecting your server from being DDoSed or driving up your cloud computing bill by someone creating expensive queries. There are solutions to these things, but they require more configuration and work to get right. The fact out-of-the-box someone can create a GraphQL server and essentially make themselves vulnerable to a big AWS bill or have their app brought to its knees trying to fulfill an intentionally complicated query is kind of concerning, these things should be default settings.

I went back to REST about six months ago and never looked back.

<comment><USER4> You're not alone. I recently took over an Elixir application that uses Apollo/GraphQL. To say the least, making a simple change requires traversing and updating a bunch of code in several areas. For example, if I want to add a single field in an endpoint: Update Apollo, update the GraphQL schema, update the resolvers, update types, update the schema. Makes me wonder what the advantage is. Would just love to go back to a basic REST implementation. Elixir's routing pipeline handles that so well.

<comment><USER5> Interesting. We're using apollo-server on top of an existing REST api and to add a single field our process is:

\- update the graphql schema

\- implement any resolvers

and we're done. More things happen in the background, but a developer doesn't have to do anything. It's all auto generated when the file is saved or a build happens.

</comment></comment></comment></comment><comment><USER6> I'm working on a project right now that's applying RDF metadata schemas to some pop culture data, and while it's not GraphQL, the idea of random queries being generated is really interesting. Our output is aimed as researchers in certain domains, and while we have researchers onboard developing use-cases, the idea that some new ones could be imagined by viewing randomized queries sounds possible.

</comment><comment> Alan-Cha Hey! I helped write the GraphQL query generator! Thank you so much for highlighting our library! This was a very pleasant surprise in the morning. I think your article does a very good job at summarizing our library, its benefits, and its uses. I would love to know about your experience using our library. In any case, this was super cool!

</comment><comment><USER7> What is the current 'leading' library for creating a Java based GraphQL endpoint? We are getting limited asks to move that direction, and it seems like the 'modern' bits are all node.js based. We will see if a variable payload is something our internal folks will bit on.

</comment><comment><USER8> Nice library, especially for testing and chaos engineering. Great Idea!

</comment><comment><USER9> That editor (in the gif) is really cool. Does anyone know if it's homebuilt, or if they used a library for that?

<comment><USER10> I think it's the graphqleditor.com which makes sense being their blogpost.

At the end of the post you can click the button and try (as in a trial) the graphqleditor

It's nice, but if you want a free one check altair or just use postman?</comment></comment>


The Ruby Revolution is Over - <AUTHOR> http://merbist.com/2009/11/09/the-ruby-revolution-is-over <comment><USER2> While I quite enjoy ruby I truly cannot stand the attitudes of the "revolutionaries".

</comment><comment><USER3> Sorry no. At best it's the end of the beginning. If you look at any job board and look at web dev jobs you'll notice that nearly all of the listings are for plain old-fashioned non-mvc development, in php no less. Rails, ASP.NET MVC, Django, etc. have all grown into respectable, practical ways of building top- tier web sites but the MVC revolution is only just starting (as are the TDD revolution and the functional renaissance).

Judging by the time it took the OOP revolution to play out (i.e. get to the state where it is the accepted norm rather than the exception), the MVC revolution probably has another decade or so before it gets to that stage.

<comment><USER4> (as are the TDD revolution and the functional renaissance).

I hope not. TDD might work for some people, or for specific problems, but it seems a shitty way to develop to some other ones. It just it is not a panacea.

<comment><USER3> I agree, but I think that TDD is probably under adopted at the moment. MVC has obvious, measurable, direct benefits to development. As does functional programming (for the right problems). The research supporting TDD is either anecdotal or murky at best.

One of the biggest problems with TDD (and agile), in my opinion, is that it lacks an objective feedback mechanism that makes it obvious whether it's being applied correctly. I believe any methodology must have built-in feedback to ensure that it's applied correctly to be practical or successful. It takes a human TDD guru to subjectively determine if a team is doing TDD "right" or not. Whereas other development practices, such as producing daily builds, have obvious channels of direct feedback (do you produce a build every day, is it broken, does it use up-to-date sources, etc.). I believe that aspects of TDD will ultimately become part of a larger set of methodologies which together provide obvious, measurable benefits to development of many if not most software projects. But today the case for TDD as a one-size-fits-all methodology is far from conclusive.

<comment><USER5> > I believe any methodology must have built-in feedback to ensure that it's > applied correctly to be practical or successful.

That will be difficult; TDD is a _design_ activity. You can test artifacts of the process, such as regressions over time, amount of rework necessary, time spent refactoring, quality of releases, and a few other metrics, but how do you measure the quality of a design in and of itself?

You might as well measure the efficacy of individual design patterns on their own.

> ... today the case for TDD as a one-size-fits-all methodology is far from > conclusive.

Who suggests that it is? I'd very much like to see references to (well- respected) people who've written "If you don't use TDD, you cannot produce great -- or even working -- software."

<comment><USER3> I guess you've never read anything by "Uncle" Bob Martin, a leading TDD proponent who has put forward the notion on several occasions that the only "professional" software developers are those using TDD (he has a lot of people who agree with him, too).

And yes, you're right, it's difficult to measure the usefulness of a design activity. But in order to make progress we must be able to do so. Otherwise everyone in the entire world will be doing TDD, most people will be doing it "wrong" and we'll be no better off, and possible worse off, than we are today. I stand by my statement. Any worthwhile development practice must have objectively measurable results, otherwise there's no way to tell if it's being used correctly or even if it has any value. Otherwise it becomes the software development version of a ouija board or a dowsing rod.

<comment><USER5> Have you read Bob Martin's "TDD Triage"? It offers a lot more nuance than you might suggest: <http://blog.objectmentor.com/articles/2009/10/08/tdd-triage>

> Any worthwhile development practice must have objectively measurable > results....

I thought you were asking for objectively measureable results _in isolation_. You'll still have terrible trouble trying to isolate a single variable (and good luck with a control group for a creative design activity!), but I suspect you can get decent results by measuring the cost of a change, the correctness of a change, and the amount of rework in a change when using TDD.

</comment></comment></comment></comment></comment></comment><comment><USER6> What the author does not mention in "How did it happen?" is how a few people with a lot of clout in the developer community made really pretty Websites describing Ruby on Rails and used words like "elegant" to convince other programmers that their code was dirty. Once they felt dirty, they wanted to be elegant too. ;)

</comment><comment><USER7> A revolution is indeed over, but it makes me wonder why was Ruby the initiator. There were other languages which could have done the same, well mostly. Python for example or SmallTalk to some extent. They had all the potential, then why Ruby?Was it just because it had the first real Killer app (namely rails) or was it some game of chance?

<comment><USER8> Python is my main language, but can understand the attraction of Ruby over Python to people stuck with Java or PHP and screaming out for something new.

Python has stuff in it that's weird until you learn to ignore it. Example - joining several items in a list so they're comma-separated. In python you do this:

        print ', '.join( [1,2,3,4,5] )

The code doesn't work in the way someone new to the language thinks about the problem. I've trained two colleagues in the basics of python, and both of them gave me the "what hope did I have of working that out?" look when I showed them this.

In ruby you do this:

        puts [1,2,3,4,5].join(", ")

Ruby avoids the whitespace debate but still manages to produce reasonably pretty code. You have to type 'end' (slightly more verbose), but you save on the colon at the beginning of the scope, and it's probably easier to write non-functional one-liners in ruby as a result. (I wouldn't know, I love my lambda :) )

Python's self keyword has the sitting-at-the-plugboard feel to it. So does __init__ - the token is ugly. Then there is the unfortunate 'super' syntax. Experienced python programmers rarely need or use it, but transitioning Java developers think in a way that leans on frequent superclassing. The python __name__ == '__main__' pattern is cryptic. Packaging mechanisms are ugly (again - something Java developers will be itching to use).

I suspect Ruby presents less culture clash if you come to it from Java, and is easier to get your head around if you come to it from PHP. Smalltalk isn't in the same domain as tools like perl, python, ruby. I think rails rode on the back of Ruby rather than the other way around - there was nothing revolutionary in rails, it was an enabler for Ruby.

<comment><USER9> You're focusing on the small surface details.

Also, the words "begin" and "end" were used in ALGOL and PASCAL and no one had much of a problem with them.

Concepts > languages/notations

<comment><USER10> When someone is deciding what language to learn, though, surface details are the main thing they have to work with. It doesn't necessarily make it justified, but it's the reality of the situation.</comment></comment></comment></comment>


Ask HN: Am I the only one who think that the vim website needs an update? - <AUTHOR>

Everything is in the title.
The vim homepage http://www.vim.org/ looks exactly like my grandmother wallpaper.
I believe that vim could be more attractive if the website was a little bit pimped up ! At least it would not scare all every new beginners that got a little interest for it. <comment><USER2> Considering that it's light years ahead of <http://www.gnu.org/> I wouldn't get my hopes up.

</comment><comment><USER3> Something like the new python site would be better...

Also <http://vim.org/> doesn't work.

Be nice if you could store your vimrc there too, with plugins etc and do something like

vim setup username

and get everything set up as you like

<comment><AUTHOR> Yeah exactly ! I have so many cool features in mind that the vim website could have. But it need a decent UI.

Nobody would be even interested by these ideas with the look it currently have.

And clearly the new python website is cool. For those who haven't seen it, <http://preview.python.org/></comment></comment>


Ask HN: A need for talent, a need for jobs, and the chasm between - <AUTHOR> Some of my closest gradeschool friends and I met for dinner last night in Concord NH and started to talk about work. We're all about 39 years old, all in unrelated high tech domains, and all recently tasked with interviewing for the first time. One is an analog chip designer, another is a database guy for GIS, and I'm an OS orchestration/pipeline person for some place.
We came to the point that there is a serious lack of available talent - we all have some very well paying open job positions that we're responsible for helping to fill. But people are not finding their way in to get interviewed. On the flip side of this, I know that a good portion of people I know are always passively looking for new positions, generally at other companies because this is the only apparent way to get promoted. People want new jobs. We want people.
It doesn't add up. There's some black hole that we don't have any insight into. I had mused it was the glut of automatic resume application software available. I've heard that a quarter of a thousand applications are sent for each new position. Automatic systems only allow the few through that have the proper incantation of the same general information.
This sort of haphazard Ask HN is really just an attempt to understand this - is our perception wrong? Are we oblivious? Or is there indeed some new obstruction that everyone is still learning how to navigate? <comment><USER2> My guess is that this is market failure. Employers make job hunting so unpleasant and expensive that potential candidates are strongly deterred from seeking positions.

For background, I'm an experienced generalist Linux programmer. I could explain strace output to you in detail, parallelize your software, etc.

I did a lengthy job search last year, after having taken a few months off due to life circumstances. I did maybe 20 phone screens, 10 tech screens, 5-6 on- site interviews. Even passed an on-site at Google. As you might imagine, this takes a ferocious amount of time and energy.

The result? No offers. Hard to say why. My skills are pretty solid. There's nothing about me or in my background that'd be a plausible red flag, aside from my age (50s).

My interpretation is that there's simply too much supply. Employers will regularly interview dozens of people for positions. (One job I was previously hired for bragged that they had a 1200-to-1 ratio of inquiries to hires.) Why do this? Because you can. Imagine interviewing 20 plumbers to redo your drain lines. Would they think you were being a jerk? (Would they be wrong?)

Looking back over my career, the best jobs I've had had remarkably non- selective hiring processes. They'd post a listing, collect resumes, choose three to interview, and hire one. The interviews weren't quiz-like--they were just conversations. It might seem like a recipe for mediocrity, but somehow it just worked. I did my best work for them, and they were very happy indeed.

My advice, spread your req far and wide, with as much honesty about what the job entails as you can muster. Wait for 20 resumes or a month. Pick two or three to interview in person. Hire one.

<comment><USER3>
      aside from my age (50s)

Bingo.

Employers, if you haven't widened your pool to consider people already beyond their 30s, you have no business complaining about a "talent shortage".

It cracks me up looking at companies' "About" pages to see them bragging about how "diverse" they are, juxtaposed with pics of assorted employee gatherings showing their workforce as uniformly white and Asian and age 22-35.

</comment></comment><comment><USER4> You often hear or read things like "The job market is broken.", "Job search is broken.", "The interview process needs to be fixed.".

While those statements probably are true I'd say that for knowledge / engineering (particularly software engineering) work there's something larger at play here and even the concept of 'job' itself is broken.

Although it requires a different mindset and approach that kind of work essentially is still treated like industrial age assembly line work:

\- People are evaluated in terms of fitness for a position according to their resume and qualifications on paper.

\- They're expected to work a certain amount of hours per day.

\- They're mostly still expected to work at a specific location.

\- Their output is measured in terms of time spent rather than value created.

\- Especially with larger companies there often is a lot of cargo cult or management for management's sake involved because that's the way it's been done before and - agile or not - we haven't really figured out how to organise knowledge work in terms of knowledge work at scale rather than falling back to how we used to organise factory or clerical work.

</comment><comment><USER5> Because spot markets are a terrible way to do anything but sell commodities.

And because they are the easiest to model economists have turned everything into a spot market.

Companies used to have pensions which locked employees to companies so companies could invest in employee training.</comment>


Show HN: DevDucky – Your Personal Pair Programmer - <AUTHOR> https://www.devducky.com <comment><AUTHOR> Hi HN! I am the founder of DevDucky, we help your engineers fully understand your company's code and product.

I was working as a Machine Learning Engineer, and like all engineers, I had to read and understand a lot of code, and information about the code like tickets and product specs. I decided to try and solve this problem by using knowledge of natural langue processing,

DevDucky aggregates data from your code and none code sources like tickets and google docs, uses deep learning algorithms and can extract information from it, like: document a piece of code, generate a product spec or answer questions about the code. You can see examples on the website www.devducky.com

I'd love to hear your opinion and what kind of future features you would love to see.</comment>


Entrepreneurs: Do Not pay to present to VCs - <AUTHOR> http://www.geekrebel.com/entrepreneurs-do-not-pay-to-present-to-vcs

<comment><USER2> I find it surprising that VCs attend these things (with the exception of something like VanTech angels where they charge each entrepreneur $15 so it covers the cost of renting the space, coffee, etc).

Shouldn't a VC think that if an entrepreneur isn't resourceful enough to get a direct intro for free, then they shouldn't be running a business. Or are businesses throwing away $1500 just to pitch to the VCs who don't have enough deal flow/opportunities that they need to attend these events (I think the big name VCs are invited to these things for free).

Sure, it's nice to get the 'opportunity' to pitch in front of 80 VCs. But hopefully you've already pitched to 1 or 2 in private.

Also, when you're pitching to a large group, assuming that there are 50 other companies pitching, is your opportunity getting lost in the drone? I think it is safe to assume that if you meet a VC during their office hours, they are likely excited to hear about a new opportunity. It should be a refreshing break from their busy day answering emails, going through financials, due- diligence, and other managerial parts of the VC life that most people probably never consider.

Save yourself $1500 (or whatever it costs) pay yourself $100/hour to do some research on a few local VCs or Angels you like (read their blogs, don't aim only for DFJ) select a few and then work on getting intros. Go through the history of companies they've funded previously, see if there is a connection through a friend who knew the CEO or Marketing person and see if that person will get you an intro, or something like that. (this is how I met with Jeff Clavier, but I didn't get funded. he had met with the CEO of a company I used to work for, he didn't fund them either)

Be resourceful, show that you're resourceful. You're going to need to do more than throw money at minor twists in the road if you're going to build your startup into a growing concern that real VCs would be interested in.

<comment><USER3> I can't understand how "I spent $1500 to talk to you" does anything but pollute the message. Consciously or subconsciously, it must send the message that you're not well connected at the very least and less valuable at worst.

</comment></comment><comment><USER4> If youngstartup is so confident that they're adding value by bringing investors and entrepreneurs together in one place, why isn't the financial burden placed on the VCs who attend the conference? After all, they're getting to see all the hottest startups present in one event. Certainly $1500 wouldn't break a startup, but that burden would hurt a VC even less.

I don't think events like these should be money-makers. I think participants should be charged up to the point that the cost of the venue is covered, but anything above this amount seems like it would be deadweight loss to most of the participants involved.

<comment><USER2> I think many of these events charge the VCs also. But I'd assume the big name VCs don't pay as they become a draw for both VCs and Entrepreneurs.

</comment></comment><comment><USER5> _The fact that you won't be joining us will not have a negative affect on the summit - we will sell out and have a waiting list....it's completely your lose!_</comment>


Why journalists can't stop asking the tech bubble question - <AUTHOR> http://fortune.com/2015/09/26/tech-bubble-question/ <comment><USER2> Vinod Khosla is quoted as saying: "This is a question only writers like. Who cares whether [startups are] overvalued or not?"

Lots of people care:

\- Potential startup employees who need to evaluate a compensation package that contains equity.

\- Investors in venture capital funds.

\- People who are thinking of buying stock in these companies if they ever IPO.

\- Larger companies who are considering acquiring a startup.

If someone is trying to pretend that the valuations of startup companies is an irrelevant question and that journalists should stop investigating the phenomenon, I'd suspect they're trying to hide something.

Assuming that the price of something can only go in one direction (up) has repeatedly caused a lot of pain to people and to the economy over the years (the last and biggest example of this was the housing bubble). And having been an investor during the 1999 internet bubble, I can definitely see similarities between then and now. I don't know whether we're in a bubble now, but it's not impossible.

<comment><USER3> Don't forget larger traditional investors that are getting involved in private funding rounds as they chase returns. This could easily ripple out to mainstreet.</comment></comment>


HBO asked Google to censor links to HBO.com - <AUTHOR> http://thenextweb.com/media/2013/02/03/why-automated-dmca-takedown-requests-are-asinine-hbo-asked-google-to-censor-links-to-hbo-com/?utm_source=HackerNews&utm_medium=share%2Bbutton&utm_content=Why%20automated%20DMCA%20takedown%20requests%20are%20asinine%3A%20HBO%20asked%20Google%20to%20censor%20links%20to%20HBO.com&utm_campaign=social%2Bmedia <comment><USER2> Someone should explain to these companies how their webservers can modify the response to internal URLs (IE force to different landing pages).

</comment><comment><USER3> They should have taken it off to teach HBO a lesson</comment>


Ask HN: Are startups a good market? - <AUTHOR>

I'm considering launching a tool that would help entrepreneurs validate whether their startup idea has merit. It would be mostly targeted to web startups, but could have broader applications to other entrepreneurs as well.<p>My question is this - do startups pay (in general)? Does anyone have experience targeting the broader startup ecosystem as a market? <comment><USER2> Yes, and I would say it's much easier to make businesses pay than consumers. As a startup founder myself (<http://www.gotealeaf.com>), if your product helps me 1) increase revenue 2) cut cost 3) reduce risk 4) save time, paying is a no brainer.

The key difference is this: when you target consumers, people tend to have a fixed budget on discretionary spending and a fixed amount of time to pay with their attention. You will be competing with the big players with their unlimited marketing dollars, polished content, and not to mention the countless startups that are piling on.

When you target business, if you can help me with any of the above 4, just "shut up and take my money"

<comment><USER3> Off topic (but curious):

@knwang - Have you tested your headline?

<comment><USER2> Testing now - what do you think? :)

</comment></comment></comment><comment><USER4> Would probably need to know more about what it does, but as a bootstrapped startup, we've been very frugal about what we spend money on. To knwang's point, the value prop would have to be abundantly clear (which is always the case). Saving money isn't as important as saving time. Time, as you've probably heard, is the scarcest resource to startups.

</comment><comment><USER5> Have a look at what unbounce, launchrock, kickofflabs, etc. are doing, as it sounds like you're in a similar space.

</comment><comment><USER3> When you say validate the merit of the idea, what do you mean exactly? As in what will you offer startups that they cannot do themselves?</comment>