In Venture Capital Deals, Not Every Founder Will Be a Zuckerberg - <AUTHOR> http://dealbook.nytimes.com/2013/04/30/in-venture-capital-deals-not-every-founder-will-be-a-zuckerberg/ <comment><AUTHOR> Slightly disappointing to see the anti-founder sentiment expressed here. To recap --

1\. The founders started from zero with their own equity and worked for six years on the startup. They took funding during '99 and '00 when it was a very easy time to get funding. Completely unremarkable investment (risk-wise) for the investors.

2\. The dot-com crash and 9/11 meant that many many businesses collapsed post 2000. So, it wasn't just founder incompetence. There are many startups that almost went under but slowly managed to get out and have exits during the late '00s.

3\. Apparently the investors thought the company was good enough to continue investing under the same name with new management. If the idea was so useless why didn't they shut it down in 2000?

4\. Most of the value of startups is created after the first several years. Many lessons are learned that give direction to future opportunities. Many of the startups that almost went under and came up, learned to pivot (same management).

The lesson to learn here is that the founder were not diligent about control over their company. It is not like the investors did some calculation of value demonstrated to come up with the numbers. They automatically started adding 8% of company shares every year based on the 2000 agreement.

To give a counter example to make things clear, Microsoft started in 1975 with Bill Gates and Paul Allen. Allen was diagnosed with Cancer and pretty much stopped working at Microsoft after 1982. After six years. How much audit-able value did Microsoft created post Paul Allen?. I would say about 99%. Does that mean he should be zeroed out? No. He kept his stake (worth tens of billions). That's how it should be.

Most of the value in a startup is latent during the early stages. Even things that don't work out teach you things. If you go by audit-able value, that pretty much guarantees early founders (who don't stay) will get wiped out. For people who are cheering on the investors, how many of you have bootstrapped a startup for six years?

<comment><USER2> A few things.

1) I'd argue it is fair to say that Microsoft - in all its ultimate scale - wouldn't have existed without Paul Allen. The 99% post value creation doesn't mean much if it wouldn't have existed to begin with. I know you weren't arguing otherwise, but I think this is worth pointing out.

2) Gates and Ballmer discussed wiping out Paul Allen's holdings in Microsoft, in a move that would have perhaps been similar to what was done to Eduardo Saverin in Facebook. Not to say that's morally right, but rather that the story you refer to isn't so cut & dry.

</comment></comment><comment><USER3> My first startup I made enough money to buy a car, the second, a car radio. Not an uncommon outcome. But I did well on Sun, NetApp, and Google shares as an employee.

When a startup goes years and years and years the likelyhood of a "big" payout goes down. Especially if there has been a number of rounds because later rounds often restructure the terms if the company is in a 'do or die' sort of situation. No matter what you sign you may be out of the money even with a big initial grant.

There was this quote: _" Bloodhound also paid a $15 million bonus to its current management team."_ which is probably the retention incentive/earnout bonus. Basically you don't want the folks who know how to run the engine to bail as soon as the check clears the bank, so you put some sort of constraint on that.

As for the original founders, hey they went on to do other things and suddenly from their past a check dropped in their lap, that is something at least.

</comment><comment><USER4> > When the Internet bubble burst, the company underwent rocky times. By 2000, > [the founder] was gone from the company, as were four other members of his > founding team.

> For the next decade, Bloodhound recovered and slowly grew, raising seven > more rounds of financing. In April 2011, the company was sold for $82.5 > million.

11 years is a long time. How much do they think they deserved?

<comment><USER5> My thinking is a little different than most of those who have commented...probably because I'm a bootstrapper.

After reading all of these comments - my thought process goes like this: If the founders output from 11 years ago is worthless, why isn't the investors' money from 11 years ago equally worthless?

If the founders' sweat equity didn't create value, the early VC money didn't either. Should the early VC's lose their investment, or just the founders?

I'm not naive, I understand that these deals are structured this way...I'm just saying that the structure is bullshit (imo).

<comment><USER6> That's not quite right. It's unclear how much total the VCs put in, at least from the article. But it _sounds_ like they continued to fund the company while the founders' involvement ceased over 10 years ago.

"For the next decade, Bloodhound recovered and slowly grew, raising seven more rounds of financing." <\-- if the insiders participated in follow-on rounds they stayed involved all the way through. Once again, that's what seems to be indicated but it isn't spelled out.

</comment></comment></comment><comment><USER7> 1) Always get an experienced lawyer to review paperwork you sign.

2) It's pretty normal for people who give you money (be it a loan or an equity investment) to get their money back before you do in event of a sale.

Imagine the situation where you raised $5m for 20% of your company and then the next day you sold the entire company for $5m. You'd get $4m and the investor would get $1m, you'd be very happy and your investor very unhappy.

Hence no rational investor would give you money without a clause that ensured that in the case of an exit that they had priority upto the amount they invested.

<comment><USER8> Unless those people giving you money are employees vesting their stock options. Perhaps I've been misled, but I don't think it's common for employees to be given preferred stock.

<comment><USER9> Right, employees are getting common stock so they don't get to jump to the front of the line when a company is sold. But they are also paying the common stock price, which is a fraction of the price paid by the preferred stock, so it makes sense that each share they own has less rights associated with it vs. the shares the investor pays a premium for.

<comment><USER10> Exactly. The preferred stock is paid for with real money. The common shares I bought as an employee was at single digit pennies a share. While I am not exactly happy how I got wiped out, I did less badly than many VCs did.

</comment></comment></comment></comment><comment><USER11> The title is somewhat misleading (wow I hear that a lot around here.) Basically the founders raised a bunch of money (almost $2M in '99 and $3M in 2000) right before the dot com bust.

The article gives no indication how well they did, how they were able to raise so much money, what happened with it, etc. So really it's hard to judge if the founders were really put on the street like the title suggests. Like someone else mentioned, it seems as though a lot of the value was created after they were gone. Who knows if they blew the money, sucked at managing and scaling the company, etc. WE DON'T KNOW without doing more research.

It kind of sucks the article was so vague on their actual business value. That would've given more insight. If it said they put all their blood, sweat, and tears and created value for years before it was ripped out of their hands and given to the big bad VCs, then I would've had more sympathy.

</comment><comment><USER12> I don't feel too bad for these founders, regarding the _outcome_. It looks like the majority of value was created after they were at the company (by people other than them).

<comment><USER13> Does the initial market exploration and proving that they did count for nothing? They built the groundwork for a successful company, and (at least in spirit) I think they deserve to share in that.

It's pretty hard to tie down when the "majority" of the value was created. The majority of the "success" may have happened after they left. I have no idea of the specifics.

In these cases there are often two types of "right". Contractually "right" and morally "right". These founders probably deserve a lot more than they got. That's just the breaks when you get yourself involved with the wrong venture capitalists.

<comment><USER12> It depends, but 8 years is a very long time. The founders were present for about 1/3rd of the company's existence, according to the article.

I was going off the fact that the company raised VC money _7 times_ after the founders were gone (following 2 raises with the founders present).

Anyway, I agree there's not enough information.

As the article references Facebook quite a bit, it's ironic that in that case 2/4 co-founders got a _lot more_ than they deserved .. they didn't even leave Harvard, but they reaped billions for a few months of part-time work.

</comment></comment></comment><comment><USER14> Really? I thought every startup went just like Facebook!

</comment><comment><USER15> I think this goes back to the fact that start-ups are not get rich quick schemes. I was at a successful start-up that was acquired by a fortune 500 company. I got north of $500. From talking to many other software engineers, that is a pretty fantastic payout. Most people will never be in a start-up that yields much of value. You've got to do it because you love it.

</comment><comment><USER16> I believe VC terms are a bit more founder friendly these days than they were in 1999. Founders have become more educated and double or triple dipping isn't as common as it used to be, in my experience.

That, and VCs are less likely to fire the founder as a matter of course to replace him/her with professional management, ever since The Social Network came out.

<comment><USER2> I think the improvement has more to do with the cost of starting up these days.

You can get a lot further down the road now vs 1996/99, before VC is necessary. By the time you take VC, properly, you can command a lot more and give up a lot less.

If the costs today still demanded giving up your soul to get started, then despite the improved access to information, I'd say that founders would still be giving up vast chunks of equity early to pursue their startup.

There's a story, that in the process of creating Excite, the founders needed to buy a hard drive that cost $10,000 to store 10gb just to test their indexing at scale. Well, Vinod Khosla gave his blessing and they went ahead. Obviously today you can test a massive data set for 1% of that cost.

[http://bnoopy.typepad.com/bnoopy/2004/09/persistence_pay.htm...](http://bnoopy.typepad.com/bnoopy/2004/09/persistence_pay.html)

Vinod: "Can the technology scale? can you search a large database?"

...

Team: "We don't know, we can't afford a hard drive big enough to test."

"Then, an amazing thing happened. Ten minutes into this meeting, his first introduction to the company and us, he [Vinod] pulls out his his cell phone, dials his assistant and buys us a $10,000, 10Gb hard drive."

</comment></comment><comment><USER17> >The rule of thumb among venture capitalists is that some 20 percent to 30 percent of companies fail, returning nothing to any investor, including the venture capitalists.

Earlier in the article, it mentions the statistic that I'm familiar with, which is that roughly 75% of venture-backed companies fail.

What gives?

<comment><USER18> "An unpublished study by Shikhar Ghosh at the Harvard Business School found that three out of four companies backed by venture capital did not return the investment. Again, it is in these cases where the founders and employees typically are entitled to receive no payment."

In 75% of cases, the _founders and employees_ receive nothing. In 20-30% of cases, the VCs also receive nothing.

<comment><USER17> Ah, I see. Thanks for the clarification.

</comment></comment></comment><comment><USER19> While one would have to know a lot more details but the basic take away is control, control, control.

</comment><comment><USER20> I was reading the comments under original article, and came across this book - "Venture Deals".

With a bootstrapping mindset, I probably may not need it. But posting the info here for anyone who might be interested in VCs... Search for it in amazon or your favorite bookstore.

</comment><comment><USER21> "The rule of thumb among venture capitalists is that some 20 percent to 30 percent of companies fail, returning nothing to any investor, including the venture capitalists."

I believe that number is the mirror. It should say "20 to 30 percent" succeed.

<comment><USER22> The number that return <1x is significant too. Out of 10 investments typically you'll have 1 big hit, 2-3 decent returns (2-5x on investment) and a bunch of "failures" which would be anything less than 1x.

Depending on the VC it's possible anything less than 3x is considered a failure because of the opportunity cost and their inability to re-invest proceeds.

</comment></comment><comment><USER23> At first I read: "In Venture Capital Deals, Not Every Founder Will Be a Zoidberg"

</comment><comment><USER24> No doubt Zuckerberg is a smart guy, but he hit the start-up lottery jackpot.

</comment><comment><USER25> Zuckerberg must be a traffic-drawing keyword for them to put it in the headline. It's such an obvious statement for an otherwise informative article.</comment>


IRobot sending robots to Japan to help with nuclear crisis.  - <AUTHOR> http://m.spectrum.ieee.org/automaton/robotics/industrial-robots/irobot-sending-packbots-and-warriors-to-fukushima

<comment><USER2> Finally! I've been watching the news and wondering why they aren't using aerial drones to get up-to-date video feeds and robots to access the dangerous areas and at least _see_ what is going on there.

I mean, even the cheap (by military standards) Parrot AR.Drones could be used to get some imagery, assuming wi-fi relays are set up first.

<comment><USER3> _robots to access the dangerous areas_

They would need to be hardened, otherwise the radiation messes up the electronics within days.

<http://www.youtube.com/watch?v=2VVx9gRS3ug#t=1m5s>

<comment><USER4> Even if a robot lasted for only a few hours it could still be extremely useful. If nothing else, it might allow the emergency workers to tell for sure how much water is in those spent fuel pools.

<comment><USER3> True. My wild guess is that they probably already know the state of the fuel- pools from the helicopter flights - the roofs being blown off and all.

On the other hand, watching those Chernobyl documentaries is not exactly faith-inducing. Considering Chernobyl was _one_ reactor going mad and Fukushima is what, four? I don't even want to imagine what those 50 guys are going through.

</comment></comment></comment></comment><comment><USER5> Wait, why is a _US_ company is sending Japan robots? Aren't the Japanese decades ahead of everybody else on robotics?

<comment><USER6> The Japanese have a cultural fascination with humanoid robots. Unfortunately, most useful robots at the moment are rather unimpressive looking and decidedly not humanoid. Ergo, much of Japanese robotics research is closer to toy design and production than to any other branch of engineering.

<comment><USER7> > The Japanese have a cultural fascination with humanoid robots.

If you are talking about pop culture, yes. However, non-humanoids don't make news as they have already been part of Japanese culture. Even kids know cars, toys, foods etc are made by robots.

As Estragon pointed out, Japan doesn't have robots suitable for such condition as it didn't have urgent necessity.

In addition, the Fukushima power plants are very old and I think it was not designed for inspection and repair by robots.

</comment></comment></comment><comment><USER8> "Please inspect and clean Roomba's radiation sensors!"

</comment><comment><USER9> Are these things really radiation-hardened enough to go into a "hot zone"? Won't that seriously mess with any semiconductors? Various manufacturers make radiation-hardened microcontrollers and so forth for going into space, but that's nothing compared to a nuclear reactor... or am I wrong? I guess you could encase the motherboard in lead or something.

</comment><comment><USER10> Maybe they could also use something bigger: <http://www.terramax.com/technology/the_brains.cfm>

</comment><comment><USER11> See also <http://news.ycombinator.com/item?id=2342559>

</comment><comment><USER12> I was surprised they didn't have robots on site within 24 hours, if not prepositioned there by default. We're talking Japan and we're talking about a place with obviously potentially extremely hazardous environments where a billion dollar budget is considered standard.

<comment><USER13> I was surprised they didn't request any generators from the army once theirs were knocked out. It would have saved a lot of hassle.

</comment></comment><comment><USER12> i love the idea of iRobot but my Roomba died a few months after I bought it new. All it had to do was drive around on my carpet and clean it -- which it did do a few times well. Hope and assume the models they send for the nuclear plant are much more robust.

<comment><USER14> iRobot also makes robots for applications like IED clearing:

<http://www.irobot.com/gi/ground/510_PackBot>

<comment><USER15> I wonder how many lives have been saved by the iRobot PackBots -- I've visited the forward robot repair depots and seen them fix the obviously broken ones, and each of those could have been another customer for our hospital. Probably hundreds over the past decade in both theaters.

</comment></comment></comment><comment><USER16> They should've sent Megatron</comment>


Ask HN: Understanding Video Streaming and CDNs - x-curiouscase-x I have been looking for sources for understanding how video streaming works and what parts CDNs play in making content available. I have not been able to find any sources which provide an in depth insight of the above  things. Can someone point me to such sources ? <comment><AUTHOR> I will throw the Kitchen sink at you since I have researched this for a while.

Check out mux.com [0]. They have a nice glossary on video.

A while ago, I found a nice presentation on how Vimeo saves money by using EC2 in a smart way [1]

Here is another one from Apple [2] about how they do HLS [2]

One here from peer5 on how they do VOD [3]

Interesting one from keycdn how to convert mp4 to HLS [4]

From google on encoding videos and Shaka Player [5]

A webinar from Bitmovin on developing for streaming video [6]

[0] [https://mux.com/video-glossary](https://mux.com/video-glossary)

[1] [https://www.slideshare.net/ptrmcrthr/vimeo- ec2](https://www.slideshare.net/ptrmcrthr/vimeo-ec2)

[2] [https://developer.apple.com/streaming/](https://developer.apple.com/streaming/)

[3] [https://docs.peer5.com/guides/production-ready-hls- vod/](https://docs.peer5.com/guides/production-ready-hls-vod/)

[4] [https://www.keycdn.com/support/how-to-convert-mp4-to- hls](https://www.keycdn.com/support/how-to-convert-mp4-to-hls)

[5] [https://google.github.io/shaka- packager/html/tutorials/encod...](https://google.github.io/shaka- packager/html/tutorials/encoding.html)

[6] [https://go.bitmovin.com/webinar-video-dev- developers](https://go.bitmovin.com/webinar-video-dev-developers)

<comment><USER2> +1 for HLS. HLS is an important aspect in saving money while using the CDN's. They allow for different streaming rates, and the player can download the video in chunks vs the entire video which saves money on bandwidth costs.

Encoding videos is important too, especially if you have users uploading videos, or you are getting videos from different sources, you can never depend on 3rd party sources because they'll always throw a wild card file type at you unexpectedly. If you don't want to do it yourself with ffmpeg, there are services out there like:

[https://zencoder.com/en/file-transcoding](https://zencoder.com/en/file- transcoding) [https://aws.amazon.com/mediaconvert/](https://aws.amazon.com/mediaconvert/)

<comment> x-curiouscase-x Thanks .. This is quite good.

</comment></comment></comment><comment><USER3> This video on scaling Facebook Live (realtime video streaming) may help -> [https://www.youtube.com/watch?v=IO4teCbHvZw](https://www.youtube.com/watch?v=IO4teCbHvZw)

<comment> x-curiouscase-x Thanks .. saw this video. The video gives a good understanding but again has alot of high level information. Are there sources which provide low level info as well?</comment></comment>


Wolfram Alpha Comes Alive with CDF - <AUTHOR> http://blog.stephenwolfram.com/2011/08/wolframalpha-comes-alive-with-cdf/

<comment><USER2> Previous discussions of the CDF:

<http://news.ycombinator.com/item?id=2789000>

<http://news.ycombinator.com/item?id=2789062> <\- Lots of comments

</comment><comment><USER3> 100+ MB download... No thanks.</comment>


Show HN: Stratigy – A server app for storing and exchanging stratigraphic data - <AUTHOR> http://stratigy.danielkerkow.de

<comment><AUTHOR> Hi, my name is Daniel and I developed Stratigy as prototype for storing and exchanging stratigraphic data as part of my masters thesis in Geography. Stratigraphic data are an important source of information in geoscientific disciplines such as geology, physical geography, archeology and beyond. Most scientists still store these kind of data in spreadsheets, with all its shortcomings (data exchange, versioning, schema definitions). In the private sector (ressource industries), central databases are well in use, but proprietary solutions mostly don't fit the needs of geoscientific researchers. This is where I want to fill the gap by outlining an open source data exchange format based on GeoJSON, enabling client applications to build upon a standardized format. For avoiding schema problems with the endless possible attributes in use for stratigraphic data, the prototype stores the attributes for stratigraphic records in a document storage column of PostgreSQL, using the newly available JSONB datatype. Furthermore, PostgreSQL allows the use of PostGIS for spatial operations on the data, such as finding stratigraphic data by location.

There is also a demo client application as IPython notebook, showcasing the data analysis that is possible with data coming from the API. ([https://github.com/dkerkow/stratigy_demo_ipython](https://github.com/dkerkow/stratigy_demo_ipython))

I'd be glad to hear if somebody has recommendations regarding the implementation or the underlying data concept. Thanks!</comment>


James Cameron's next movie: Battle Angel - <AUTHOR> http://www.mtv.com/movies/news/articles/1628644/story.jhtml

<comment><AUTHOR> Here is a youtube of Battle Angel rendered in 3D CG: <http://www.youtube.com/watch?v=YTeyoVF8z-U>

</comment><comment><AUTHOR> Here's more about Battle Angel: <http://en.wikipedia.org/wiki/Battle_Angel></comment>


Show HN: I released my first Android game: "Black Hole Escape" - <AUTHOR> https://play.google.com/store/apps/details?id=com.quarkdev.blackhole <comment><USER2> It's pretty easy to get a high score by keeping the finger on the display. Just got 299 without doing anything.

<comment><AUTHOR> yep, I also found this bug. It will be fixed in the next release. ty for you feedback. :)

</comment></comment><comment><USER3> As a fellow physics geek mobile dev (eg. ThreeBody, Geodesic Asteroids) I gotta ask: how are you modelling the gravitational force?

<comment><AUTHOR> Each frame, I calculate the velocity (x/y) of each objects based on their distance between the object and the center (target). Then, I apply a linear velocity on the body + the rotation based on the angle. I've used Box2D for that

Here is a part of the code (lua, LÖVE framework) : [https://gist.github.com/psych0pat/2b7c8f52b9191f28ef8f](https://gist.github.com/psych0pat/2b7c8f52b9191f28ef8f)

It's a bit dirty but it's working :)

<comment><USER3> Thanks for the snippet.

Working code is a good thing. I tend to rat-hole on the physics stuff, since I have a background in it.</comment></comment></comment>


Voxel Quest Fluid Dynamics and New Rendering Method - <AUTHOR> http://www.voxelquest.com/news/update-05-20-2015 <comment><USER2> Author here - as mentioned I was not expecting this to get posted but I am happy to answer any questions or elaborate further. For so long as I can stay awake at least. :)

Some other shots worth looking at:

Some terrain I quickly whipped up based on this method, using Voxel Quest's actual generated map: [https://twitter.com/gavanw/status/589499986854838272](https://twitter.com/gavanw/status/589499986854838272)

Screenshot of the test scene, with median filter: [https://twitter.com/gavanw/status/590895532509265920](https://twitter.com/gavanw/status/590895532509265920)

Here is a short vid showing that it is in fact volumetric: [https://twitter.com/gavanw/status/590903499342229504](https://twitter.com/gavanw/status/590903499342229504)

A few basic tricks I use:

A "macro" pass that ignores small, expensive to compute details.

A "micro" pass that avoids texture reads but produces complex algorithmic textures (texture reads will KILL your performance in many cases because of cache invalidation).

Supercover lines used for raymarching to precisely march through each cell.

[http://lifc.univ-fcomte.fr/home/~ededu/projects/bresenham/](http://lifc.univ- fcomte.fr/home/~ededu/projects/bresenham/)

<comment><USER3> Can you give an overview of the technique you are using for this project (in general, not just this demo) for someone with only undergraduate level graphics knowledge?

Do you basically draw two triangles that fill the whole screen and then render everything using a shader?

And how do you store that many voxels? A sparse data structure? When you have a large solid area do you simply say this entire area is filled so don't have to represent the voxels individually?

I saw a video where you cut away sections of a building using a brush. Do you store the building voxels and then store the subtraction separately? If you had a world with thousands of buildings in it and cut away a little at each does that mean you can no longer share the shape of each building and space requirements blow up?

<comment><USER2> > Do you basically draw two triangles that fill the whole screen and then > render everything using a shader?

Yes. It determines the ray origin and direction for each pixel, and casts out a ray from there with pretty standard ray tracing methods and a few additional tricks I mention above.

> And how do you store that many voxels? A sparse data structure? When you > have a large solid area do you simply say this entire area is filled so > don't have to represent the voxels individually?

No voxels anymore, although it can be fairly easily "voxelized" by clamping the step space of the rays to approximate towards the nearest cube. So, I guess I might have to change the name, or make it look more voxel-ly :)

> I saw a video where you cut away sections of a building using a brush. Do > you store the building voxels and then store the subtraction separately? If > you had a world with thousands of buildings in it and cut away a little at > each does that mean you can no longer share the shape of each building and > space requirements blow up?

You can store a million modifications in a few megabytes. I was never intending for it to allow that many though, but I will figure out what corner cases are worth addressing.

<comment><USER4> > No voxels anymore

So how do you represent geometry then? Mesh? SDF? Space tetrahedralization?

<comment><USER2> Same way I've always done in VQ - with math/logic :)

<comment><USER3> I don't get it - do you write a mathematical function that says whether or not you have intersected with anything in the world? How does that not turn into a huge piecewise? How does that allow you to change the geometry, as I guess it gets compiled into the shader?

<comment><USER2> You can get somewhat of an idea how it works here:

[http://www.voxelquest.com/news/how-does-it- work](http://www.voxelquest.com/news/how-does-it-work)

You can change geometry by passing parameters to to the shader or creating special object generation functions within the shader. This is not intended to render everything in the game, mostly just aspects of the environment that can be easily procedurally generated like terrain and structures. Other things can be merged in from a traditional pipeline like using polygonal character models (or even sprites, as I have shown in my past demos).

The more that you can define mathematically, the better. Doing texture lookups is almost an order of magnitude more expensive sometimes, and less precise always.

You start really simple, and say did I hit the bounding box that contains the object? If so, did I hit the more complex piece of geometry within that? If so, what UVW coordinate did I hit on the geometry? Marching through the UVW coordinates on the ray, you can create any sort of procedural texture. I have shown a voronoi texture and a shingle texture but really anything can be created and some procedural textures are very cheap compares to others (voronoi is relatively expensive). If you look at old shots of my terrain, it is all created with voronoi and noise pretty much.

[http://www.voxelquest.com/gallery.html](http://www.voxelquest.com/gallery.html)

It is possible things will get too expensive to do in realtime, but the option will always be there. Worst case scenario is that I can render like I did with my old isometric engine and cache the render results. At the very least the option will always be there for more powerful computers in the future. That said I think realtime is feasible on decent midrange/modern hardware.

</comment></comment></comment></comment></comment></comment></comment><comment> david-given This sounds a bit like Euclideon's Unlimited Detail tech demo video, which got some press a couple of years ago and then vanished without trace:

[https://www.youtube.com/watch?v=00gAbgBu8R4](https://www.youtube.com/watch?v=00gAbgBu8R4)

(Warning. Video may contain critical levels of overhyped vapourware.)

To me it sounded like Euclideon had figured out a new wrinkle in efficiently storing and searching very large instanced voxel spaces, and Voxel Quest sounds very similar. While Euclideon's demo was obviously a rigged tech demo, it still looked very cool, and I'm glad that it's turning out that this sort of thing is feasible.

<comment><USER4> Since I happen to know the founder of Euclideon and the company a little bit I have to emphasize here that their tech was and is real. Sure in the videos it wasn't presented in a neutral academic setting but it's far from rigged and in fact is being used in the geospatial industry today.

Voxelquests technology looks very promising too and I am looking forward to seeing this applied in a game setting.

<comment><USER5> For those who didn't seen it - Euclideon released a new video about that: [https://www.youtube.com/watch?v=5AvCxa9Y9NU](https://www.youtube.com/watch?v=5AvCxa9Y9NU)

<comment><USER6> "Euclideon Makes World's Most Realistic Graphics"

Yeah, honest and humble as always. I wonder how the people who actually developed the algorithms and procedures they used about this.

<comment><USER7> The same way everyone in any industry takes credit for work done by other people.

And it's just product marketing. Most of the world aren't engineers. Boring them with technologies and specifics isn't how you sell products.

<comment><USER8> It isn't 'just product marketing' Their videos are ridiculous and prey upon people not being able to identify what they aren't seeing.

They made grandiose claims and diverted attention to things that didn't matter. How many games are using what they've done?

<comment><USER7> It seemed pretty clear that they were more interested in geospatial, real estate etc industries. Gaming is not even a sensible industry to break into given how fundamentally different the workflow would be to use this technology.

And sure it was a little over the top but then again so is most marketing.

<comment><USER8> That is 100% not true, their videos were of them running around in video game engines and pointing at low poly trees!

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> No discussion of ray marching is complete wihtout mentioning Shadertoy ([http://www.shadertoy.com](http://www.shadertoy.com)) and the work of great shader artists such as Iñigo Quílez, Paul Malin, Dave Hoskins, Reinder Nijhoff and many others. If you are interested in these techniques, check it out.

One of my favorites is Elevated: [https://www.shadertoy.com/view/MdX3Rr](https://www.shadertoy.com/view/MdX3Rr).

I've converted many of the most beautiful ones to auto-stereoscopic 3D for Tao3D ([http://tao3d.sourceforge.net](http://tao3d.sourceforge.net)). An infinite landscape in glasses free 3D is a thing of beauty :-)

<comment><USER10> I've seen this website mentioned many, many times. What kind of background would one need to begin to start understanding/making these things?

Every time I see this site, I think _I should figure this out_. I don't see any sort of introduction area, so I click on a shader and am presented with some totally indecipherable code.

<comment> david-given The maths isn't hard, but you do need a decent grasp of vectors and (optionally) 3D transformation matrices, and it's pretty opaque until you figure out the terminology.

I haven't done GPU raymarching myself but I've used the same techniques on the CPU side in order to develop a whole-planet procedural renderer (in Ada, of course); the raymarching was relatively straightforward but I got horribly bogged down trying to make a volumetric atmosphere work.

One resource I found really useful was Iñigo Quilez' website; in particular, his article on basic terrain raymarching explains most of the concepts: [http://www.iquilezles.org/www/articles/terrainmarching/terra...](http://www.iquilezles.org/www/articles/terrainmarching/terrainmarching.htm)

(Also known as iq, he's responsible for a number of amazing demos, including the 4kB demo _Elevated_: [https://www.youtube.com/watch?v=jB0vBmiTr6o](https://www.youtube.com/watch?v=jB0vBmiTr6o) He also appears to have written ShaderToy. Search for iq to see his stuff omfg ShaderToy lets you write shaders to produce _music_ now? [https://www.shadertoy.com/view/ldXXDj](https://www.shadertoy.com/view/ldXXDj))

</comment></comment></comment><comment><USER11> Looks awesome.

Gavan, any advice where to get started on graphics programming? I'm an ex- games programmer (AI, networking) who always avoided graphics like the plague - too many weird hardware permutations, fallbacks, crappy drivers, etc. Now that I'm not in the industry, I'd like to learn for fun. But I have no idea what the "sweet spot" is for desktop (non-mobile/console) graphics - DirectX? OpenGL? What version of vertex/pixel/geom shaders are the norm? Are there standard practices for shadows/lighting now, or are they still done on an ad- hoc basis? How normal is GPU ray tracing? Virtual textures? And so and so on. I haven't been able to find anything that kind of discusses these issues at a comprehensive/holistic level. Anything useful you've found?

<comment><USER2> Thanks!

My advice is to find a good set of tutorials and start ripping them apart. In another comment I mentioned Three.js is a great way to get up and running fast. WebGL has limitations but the ease of development pays off especially if you are just learning.

TBH does not matter what versions you use too much. I am still using one of the older shader versions (1.2 or 1.3) but I will probably upgrade just because there is not a major downside to using a newer version.

Lighting and shadows vary everywhere and there is no best way, just depends on your use case. Cascaded shadow maps are quite common in high-quality, polygon- based pipelines. Commercially, GPU ray tracing is very rare, if for no other reason than the tooling is just not there like it is for polygons.

Ultimately, no fast path - you just take it one step at a time starting with simple goals and you will ultimately get there. Even a year of hobby development will make a dramatic difference in your understanding, but the payoff is slower from there.

</comment></comment><comment><USER12> I'd be curious to know what the new algorithm is that dispenses with "chunk loading" allows all scene data to appear instantly.

<comment><USER13> I expect that it's signed distance field ray marching.

You can see a demo of the tech here: [http://m.youtube.com/watch?v=lwFVlNytq0Q](http://m.youtube.com/watch?v=lwFVlNytq0Q)

And a presi of how that demo works here: [http://on-demand- gtc.gputechconf.com/gtcnew/on-demand-gtc.ph...](http://on-demand- gtc.gputechconf.com/gtcnew/on-demand- gtc.php?searchByKeyword=Timeless&searchItems=&sessionTopic=&sessionEvent=&sessionYear=&sessionFormat=&submit=&select=)

<comment><USER14> Wow, thanks!

</comment></comment></comment><comment><USER15> Looking forward to playing with the API and building my own worlds/demos/games :-)

I'm hoping your license terms let folks initially play with it for free like the UT4/Unity licenses.

<comment><USER2> Full source will be up on Github (with possible exception of any code that needs to be secure like server stuff). It will get leaked/pirated anyway, so not going to bother charging for the source.

<comment><USER16> I understand if you just don't want to deal with commercial licensing and developer support. But really, regardless of if your code is leaked or not you can get royalties the same way Unreal does on commercial products that use it.

<comment><USER2> Yeah there will be some sort of license in place although I hope to one day have it under permissive open source. All I mean is that I'm not limiting code to people who have purchased the game. :)

</comment></comment></comment></comment><comment><USER17> Did they just add a feature or replace the whole rendering engine? It looks like a replacement with the second video. I start to wonder if it will ever be finished.

<comment><USER2> Much of the old rendering pipeline is still there for materials, fog, post process fx, screenspace lighting, etc. The only part of the rendering that has changed is the part that generates the depth and normals. I have been using a test scene to quickly get some other stuff up and running, stress test things, and debug. But its still capable of rendering the old stuff, although there is a bit of work to get it back in. :)

I think the performance improvements were a necessary evil. The old chunk loading was simply too slow and had a negative impact on gameplay. I'm hoping to keep things going on the gameplay front as well but I am only one man! :)

<comment><USER18> To me it looks like the effort was worth it. The chunk loading was a showstopper where as this looks really slick now.

<comment><USER2> Thanks!</comment></comment></comment></comment>


Modes of Living - <AUTHOR> https://invertedpassion.com/modes-of-living/ <comment><USER2> The article is good in saying stay out of the middle. The point it missed completely is that you can be in several places at once. Accepting of many things and simultaneously changing the world in a specific other place. Same goes for being intro/extravert. After looking inward, take what you've discovered and apply it outwardly. Like they say, wisdom is knowing what can be changed and picking your battles along the lines of your passions.</comment>


UXBASIS - UX in a box - <AUTHOR> http://uxbasis.hellogroup.com/

<comment><USER2> The Product looks nice enough. But if the samples are representative of the product it looks like you are paying for glorified studying cards with little in-depth content.

Maybe this is based on a widespread model I am not aware of, maybe they are selling their consultancy services and this is part of it, but as a stand alone product I wonder how useful it is.

</comment><comment><USER3> after watching the video and clicking the links, im still confused as to what this is ? As a side note, it would be great if this were a service that could look at my website, and give me ux improvement suggestions.

</comment><comment><USER4> I like how a ux site has a flash intro. Doesn't exactly command respect.

<comment><USER5> What bothers me the most is the flash animation with the overview of the steps. What a poor Fitts implementation.

</comment></comment><comment><USER6> It's a cool product, sort of expensive but I can see the value at design firms possibly.

At the very least, it gave me something to send to the guys I'm working with that are non-technical and inexperienced in the web development/user experience process.

It opened me up to a lot of cool ideas to carry out the customer development and validation process.

</comment><comment><USER7> Intro video could use a pause or mute button.</comment>


Sorry, Ms. Ehmke, the "Hippocratic License" Can't Work (2019) - <AUTHOR> https://perens.com/2019/09/23/sorry-ms-ehmke-the-hippocratic-license-cant-work/ <comment><USER2> From the license:

> software developers have divorced themselves from the consequences of the > code that we write

Either the author is a developer or she isn't. But switching voices within a single sentence just cries for an editorial pass over the text.</comment>


1960: The Year the Singularity Was Cancelled - <AUTHOR> <comment><AUTHOR> Sorry, pasting error. I've reposted. But for anyone who ends up here, the link is: [https://slatestarcodex.com/2019/04/22/1960-the-year-the- sing...](https://slatestarcodex.com/2019/04/22/1960-the-year-the-singularity- was-cancelled/)

</comment><comment><USER2> Looks like you left out the link</comment>


20 Web-based Tools to Help Run Your Freelancing Business - <AUTHOR> http://devgrow.com/20-tools-to-help-run-your-freelancing-business/

<comment><USER3> FreshBooks is the most useful web-based tool that I use as a freelancer. The product is easy to use, has great features and they have good customer service.

<comment><AUTHOR> One pleasant surprise was that they give you a sample snail-mail invoice, even with their free plan. It may be a clever marketing ploy but it works - <USER2> remember opening that envelope and being convinced that this would add a whole new level of professionalism to my freelancing.

<comment><USER3> Yes, I got that, too. :) They also gave me an introductory phone call to see how things were going and if I needed any help. They are really top-notch. :)</comment></comment></comment>


PG on Java - comments from 2001 - <AUTHOR> http://www.paulgraham.com/javacover.html

<comment><USER2> Sort of ironic that all of his concerns were proven out, yet Java still managed to prove his prediction wrong.

Though his definition of success seems to be "would _really_ good programmers (wizards) ever use this language for sweet projects? If yes, than this language is a success." By that metric I guess he would be correct.

<comment><USER3> The one criticism that I don't agree with is, "The DoD likes it." The DoD is a huge place. Sure, most of it is extremely bureaucratic and planning oriented, but there are a few hacker friendly corners (DARPA, anyone?) here and there.

I also don't agree with his criticism of Ada. Yeah, Ada isn't a good choice if you're building a web app that needs to be out next week. But Ada wasn't ever intended to be used for that sort of software. Ada was designed to build absolutely reliable software. I'd rather have the Space Shuttle's control software written in Ada than Java.

<comment><USER4> "I'd rather have the Space Shuttle's control software written in Ada than Java."

That's what I was thinking, too. Was Ada really meant for "other people" to use? I wonder how many people involved in the process went on to write Ada afterward?

I don't know the facts, but I would guess that the critical system software writers in the US are a fairly small group, and anyone on that committee _knew_ they would end up writing a lot of Ada afterward.

I doubt it was the same kind of "make a language for the masses" simply because there aren't masses of people capable of writing software for critical systems. I would guess that it had more to do with a mutual pact: programmers have to add extra annotation for interfaces and constraints; but in return they can absolutely rely on those interfaces and constraints because they know that the compiler enforces them.

</comment></comment></comment><comment><USER5> In "The Hundred-Year Language"[0], PG elaborates on what it is to be a successful programming language, and what he thinks will happen to Java. PG predicts that Java will be an evolutionary dead-end without much influence on future languages, like COBOL[1].

Let's look at what Java has influenced. C# is fairly obvious, but that too is likely a dead-end. I don't (personally) know any good hackers who are excited about C#. Actionscript and PHP seem to have been inspired by Java in their object systems. I don't think either has or will influence future systems, except perhaps as examples of how not to do it. Scala and Clojure show some Java influence, but it's not very strong. That influence is primarily in the form of compromises required for running on the JVM platform, which probably won't be around in its current form in a few decades.

[0] <http://www.paulgraham.com/hundred.html>

[1] COBOL influenced the syntax of SQL, but I can't think of much else a hacker today would use voluntarily that was influenced by COBOL.

<comment><USER6> I don't personally know anyone living off of food stamps, but that doesn't mean they're not out there. C# doesn't thrive in exciting spaces, but C# is probably doing more to evangelize FP concepts than anything else in the corporate world. It's also pushing into mixed static/dynamic territory these days.

<comment><USER7> The "exciting spaces" really is one of the most important issues. Everyone who's ever told me to work in C# or Java is just in it for the money, and willing to goldrush to crappy enterprise-ware. Rather, I like Cocoa as it's the best way to interact with users who _love_ their computers (other than Linux, 'natch.)

But yes, Microsoft is really doing some awesome conceptual stuff.

</comment></comment></comment><comment><USER8> Normally I'm not especially enthusiastic about doing another round of java bashing, or another revival of an old (but good) PG article. But there is one last prediction here that has become very relevant in the past few months:

"Its daddy is in a pinch... If Sun runs into trouble, they could drag Java down with them."

Hard not to hear an echo of this prediction from 2001 when reading about Apache's decision to drop out of the JCP.

<comment><USER9> Many of us who use Java on a daily basis don't really care about the Apache/JCP soap opera. It's a fun little sideshow, but it doesn't matter.

Wicket is pretty much the only apache java project that holds any value, anyway. And they didn't start out as an apache project.

</comment></comment><comment><USER10> The coin has two sides. While corporations push (perhaps ignorantly) for Java, I've always been very resistant to Java. Probably ignorantly, due to elitist cultures like HN where anything mainstream is frowned upon. One could say that in the bookshops I visit, the "cover of Java" has been torn up and defaced before even being put on display. I'm ok with that though. I'm as elitist as the next guy.

<comment><USER11> Java is industrial strength; just treat it as C++ where you don't have to dick with the leaky OS abstractions.

I really appreciate the language, just not crazy about the lack of closures.

</comment></comment><comment><USER12> At, OSCON, the Eclipse "ecosystem guy" (I think it was Donald Smith) had a nice overview of what he was up to, and how he measured "ecosystem strength". It gave me pause, because that was the first thing that really nailed why tech like Java takes off. Productivity, robustness, and niche creation.

<http://www.oscon.com/oscon2010/public/schedule/detail/13307>

I figured I'd just drop a link to it, because it's interesting to compare with "hacker instinct". Java got the ecosystem rolling really quickly; it would be interesting to compare that kind of growth across different tech.

<comment><USER12> I'll note that he heavily referenced a paper, "Strategy as an Ecology"

<http://williamkuo.bokee.com/inc/HBR-Strategy_as_Ecology.pdf>

This is probably a better reference point.

</comment></comment><comment><USER3> You know, a lot of PG's points are correct, despite Java's success. Java was aimed low - it was pitched as a way to write good enterprise software without expert developers. It is bureaucratic - many times the only way to get the object you want is to submit the proper forms to the object's factory. Suits love Java because Java programs can be described with wall-covering UML diagrams.

The fact that all of these turned out to be reasons for Java's _success_ rather than its failure doesn't undermine the validity of the criticisms.

<comment><USER13> But wasn't Java originally targeted at embedded devices, like settop boxes, and NOT enterprise apps?

And C++ was originally written to help Bjarne, not for a user base. It was accidental that "C with Classes" caught on at all.

</comment></comment><comment><USER14> C++ was built entirely for its creator to use. Depending on how you take that, it could mean that either 1) PG is wrong about C++ and it's an okay language, or 2) PG is wrong about language design in this case and people can design bad languages for themselves.

I think it's the first one- C++ is a solid language for what it's good for, which is very different from what Java or Lisp or Python are good for. C++ and all its techniques (beyond just being a "better C") can be used in place of C perfectly well.

<comment><USER15> > C++ was built entirely for its creator to use.

He didn't say "languages built for their creators are good", he said "good languages are built for their creators."

<comment><USER14> He said "The good languages have been those that were designed for their own creators: C, Perl, Smalltalk, Lisp." To me that implies that /the/ good languages were /(most of/all) those/ that were designed for their own creators.

Worse, he said "Historically, languages designed for other people to use have been bad: Cobol, PL/I, Pascal, Ada, C++." He explicitly included C++ in the list of languages designed for other people.

</comment></comment></comment><comment><USER16> "It is obviously irrelevant whether any of this is true or not. Arguments like that are not _true_, they are arbitrary."

[http://www.xach.com/naggum/articles/3232434814758067@naggum....](http://email@example.com)

<comment><USER17> Your comment provided interesting historical context, but I'd be more inclined to consider Mr. Naggum's arguments if he didn't send out another email shortly thereafter calling pg names like 'cretin', "lowlives who could not program in Ada if it would save their lives" and "too randomly wired to accomplish anything useful.

[http://www.xach.com/naggum/articles/3232480542642559@naggum....](http://email@example.com)

If your argument against someone is that they are immature, it doesn't help to behave immaturely yourself.

<comment><USER18> However, "tu quoque" is not an argument either...

</comment></comment></comment><comment><USER19> For quite a long time, Java was the only imperative language (most programmers can grok imperative faster than a functional language) with garbage collection, language support for multi-threading, a cross-platform VM, tooling and libraries, "without horrible performance". This has definitely helped it succeed in spite all its ugliness.

<comment><USER20> Python covers all of that with the exception of multi-threading, and according to an internal memo at Sun linked at the bottom of the article (<http://www.archub.org/javamemo.txt>), it (at least initially) had comparable performance to Java while using much less memory.

<comment><USER21> I work on 500k lines of Java code and I really like static typing in this case. Eclipse is incredible for code navigation.

</comment></comment></comment><comment><USER22> "On the hacker radar screen, Perl is as big as Java, or bigger, just on the strength of its own merits."

And 10 years later, I know a bunch of hackers using Java, and not one single person, even former perl junkies, that is using Perl for anything besides "it's a little too much to do this in awk".

<comment><USER23> I met a few people last month who still use it for larger projects. My reaction was along the lines of, "Really? No, wait, really? REALLY? Nuh-uh."

Unsurprisingly, I suppose, I was told that, since I gave it up as a too much trouble, conventions and patterns have emerged that, when followed, make Perl more scalable (in the sense of being usable in the context of large programs) and maintainable.

<comment><USER24> It happens. PHP turned into a decent language when I wasn't looking.

</comment></comment></comment><comment><USER25> PG's comments seem geared towards Java the language. Part of what has made Java successful isn't the language at all, but the Java platform itself and the class libraries. I'm not sure anyone would describe Java as a clean, beautiful, powerful, language, rather one that is solid and reliable enough to get the job done.

I would say that Java was a successful language initially because it provided capability that C++ didn't, and remains relevant because the JRE is an attractive server-side development platform, and hackers have found ways to get around the language's bureaucratic aspects-- in some cases even outright substituting a language like Clojure or Scala for Java.

So I'd say the 'radar' was fairly accurate, but incomplete because it did not consider technology apart from language design.

</comment><comment><USER26> People get too hung up on languages. I want to solve problems, and I'll use the best tool for the job. I know Java, I know how to use Java to solve innumerable problems very effectively and efficiently, so I'll use Java.

I actually lost some respect for Paul after reading this collection of thoughts.

"The wrong people like Java"

"No one loves it"

"The language was made for people dumber then the creators"

etc.

Ruby was made to be as elegant as possible. There is nothing wrong with that.

And I don't "love" any language, I "love" solving problems. My passion is not coding, it's delivering, and Java has never let me down yet.

<comment><USER11> _People get too hung up on languages. I want to solve problems, and I'll use the best tool for the job. I know Java, I know how to use Java to solve innumerable problems very effectively and efficiently, so I'll use Java._

So is Java the "best tool" for the job _because_ it's the one you happen to know best?

I am just trying to understand the logic.

In my experience, when people say "best tool for the job", they have a set of very diverse jobs in mind.

<comment><USER26> It's a good question, and I should say I know Java very well, but I also know plenty of other languages too. I used C++ before the rise of the web, and I also took the time to learn Python, Ruby, and other languages as they came in and out of the fad zone.

My conclusion is based on my experience with learning these languages. I'll pick on ruby since that is the one brought up the most. I built several web sites using Ruby (mainly CRUD stuff) and my conclusion after having built around 5 web sites with Ruby (versus 7-8 at the time with Java) was that Ruby wasn't any faster or better at solving problems then Java. In fact, usually it was worse, multitudes of libraries with poor documentation and in many cases no clear standard. The language syntax was novel, but language syntax isn't a step function in productivity, at least not for me.

So I continued using Java as my main language, and didn't feel like I was missing anything by not using it. I learned a few philosophies which helped my efficiency a bit, including the "convention over configuration" ethos from Ruby/Rails (my Java code generally has zero XML files), but the niche features each language was selling wasn't enough to counterbalance the deficiencies in productivity which came from using them.

And I should say Java may not always be the best tool for every job, but I've worked on a wide variety of problems (scalable web services, high traffic content sites, ecommerce) and in each case Java, the language and the platform, in my opinion - delivers the goods.

</comment></comment></comment><comment><USER21> I work with a team of former Lisp hackers, who saw through the hype and have built some pretty cool software in the last decade.

<comment><USER11> I am still a Lisp programmer, but I picked up Java just 4 months ago, and I already shipped my first major server app 2 days ago.

Tell your Lisp hacker friends they can use ABCL. It's Common Lisp on the JVM :-)

<http://common-lisp.net/project/armedbear/>

</comment></comment><comment><USER27> While we're talking about smell, does anyone else think the name "Java" is just ugly?

Good products are lovingly named. Despite Gosling's original name of "Oak," Java was picked at random from a list of words. Even the things that touch Java get ugly names like NetBeans and HotJava.

And then JavaScript is toned down to CoffeeScript by the same people who want nicer looking syntax.

</comment><comment><USER28> The article seems to be "Java the programming language" oriented. I guess PG is right when it comes to that. However, "Java the platform" is as rock solid as it has ever been which is good since "Java the programming language" doesn't really matter anyway.

</comment><comment><USER29> Just a note, I'll say I love java.

</comment><comment><USER30> interesting I wonder about his opinion about ruby.

</comment><comment><USER31> PG:

"...let me clarify that I'm not writing here about Java (which I have never used) but about hacker's radar (which I have thought about a lot)."</comment>


Ask HN: Freelance Contracts - <AUTHOR> I am going to start freelancing(in NJ,USA) on the side(initially websites) and was curious about contacts since that's something I know should be in place but don't want to get held up on it if it's not necessary to have a formal contact in place initially....<p>- When first starting off,is acceptable to use exchanged emails as a contract?<p>- At what point would you say it's necessary to switch to actual written contacts?<p>- Do you actually use written contacts of PDF?<p>- How do you go about the process of planning the specs with a client and updating the contract. With every new request after the initial contact, do you halt the development process until you receive back a revised contact?<p>If you have any templates that you wouldn't mind sharing that'd be greatly appreciated. (Email in profile) <comment><USER2> There is a decent contract template ("Killer Contract") here ([https://gist.github.com/malarkey/4031110](https://gist.github.com/malarkey/4031110)) which is a good start to base things off. It's nice and succinct and avoids the lawyer-speak which I particularly dislike.

</comment><comment><USER3> You can look for 2 primary templates:

\- Master Service Agreement (MSA)

\- Statement of Work (SOW)

These 2 should mostly cover everything. You can google/wikipedia them for details but the point of MSA is that it loosely defines general rules of engagement with a client while SOW defines specific project deliverables. Using the 2 , you should be good.

</comment><comment><USER4> I use a slightly modified version of the MSA and SOW that Mason Pelt put up for free on his site: [http://masonpelt.com/free-scope-of-work- template/](http://masonpelt.com/free-scope-of-work-template/)

</comment><comment><USER5> Some context would be great, laws differ from country to country.

<comment><AUTHOR> Thanks, I updated it. I live in NJ, USA

</comment></comment><comment><USER6> You really should use a contract. I typically use a master services agreement and it states that scopes of work and fees can be approved by the client through emails.

That said I also do lots of work just based on email.

Typically people are honest and you will get paid. But there are things you can do prevent problems. If you get a bad feeling about a client trust your instincts and pass on the work or work on terminating the working relationship as soon as you can.

Get a clear scope of work approved in an email and a clear fee.

Break each project in to tasks/phases. For a new client keep these small maybe even a single day or work/8 hours. This will all be outlined in the email the client approves in email (don't get an ok over the phone, have them email to proceed with the work). Note that you or the client reserves the right to end the project at the completion of any phase.

Also note the phase works as follows phase development, client review, client gives feedback that will be completed during phase 2, client pays invoice phase 2 begins.

So once the project kicks off you do the initial phase, submit it to the client for review, and submit the invoice, they provide feedback, pay the invoice and you start work on the next phase.

This way the client sees the work, provides feedback and pays the invoice. The key is establishing that they will be happy with the work and are paying invoices.

If they add/change features you can add a new phase or update a phase you haven't started on yet.

The real risk is doing too much work without getting paid and then having a client hold that over your head and keep leading you further and further out with I'll pay you after the next phase. So don't continue work without payment.

If they want you to work a week or two between payments ask for 50% at the front of the time period.

As far as payments I typically use paypal or stripe so they can pay with a card to speed things along, a check is fine too but it might take a while to get there, then once you deposit it, it could take a few days to clear their bank. With both you run the risk of bounced checks and charge backs. I'd rather risk a chargeback and have the documentation in email to back it up. I had a client's wife initiate a charge back when they didn't recognize the charge. The client realized this and offered to send a check but I had already contested the charge back by submitting the clients emails indicating they had willing paid my invoice and they denied their chargeback request.

Then you proceed phase by phase till the project is completed.

Make sure you back up all the clients files/databases/etc before beginning work, keep incremental backups, before work started, your work and the final completed work for each phase. I usually create folders with the current date, and zip those up occasionally so there are incremental copies of everything and use online backup and timemachine for this as well. Occasionally you'll overwrite a file you need to replace or the client will be like well this worked before but doesn't now. So you can show them what it was doing before since you have a snapshot before you started. Also use GIT in your workflow if you're comfortable with it.

Good luck.

<comment><AUTHOR> Lots of great points, I really appreciate you taking the time to write this.</comment></comment>


What's the best way to stay in a conversation on Hacker News once you've commented? - <AUTHOR>

Is there a way to subscribe to a convo via email or RSS, or do you just constantly have to come back to check for replies?<p>If (as it seems) there's not a way to subscribe to push notifications once you've joined a conversation, does anyone know if this is deliberate, or just something that hasn't yet been implemented. If it's the latter, I vote for setting this up ASAP. I'd love to be able to subscribe to Hacker News convos via email. <comment><USER2> Write a little script that pulls [http://news.ycombinator.com/threads?id=<username>](http://news.ycombinator.com/threads?id=<username>); and does some magic to pull out the info into an RSS feed _(yes, ideally pg can add this as a real feature, but I'm being pragmatic here ;-))._

Just a messy Ruby-based example I threw together. Works for me.

      require 'rubygems'
      require 'open-uri'
      require 'hpricot'

      username = 'petercooper'
      uri = 'http://news.ycombinator.com/threads?id=' + username
      doc = Hpricot(open(uri))

      puts %{<?xml version="1.0" encoding="utf-8" ?>
      <rss version="2.0">
      <channel>
      <title>Hacker News responses to #{username}</title>
      <link>#{uri}</link>}

      (doc/'td td table').each do |post|
        content = post.inner_html
        next if content =~ />#{username}</       # skip if we posted it
        next unless post.inner_html =~ /vote/    # skip if it's not a post
        id = content[/\_(\d+)/,1]
        comment_text = (post/'.comment').first.inner_text
        commenter = content[/user\?id=(\w+)/,1]
        puts %{  <item>\n    <title>Comment from #{commenter}</title>}
        puts %{    <link>http://news.ycombinator.com/item?id=#{id}</link>}
        puts %{    <description>#{comment_text}</description>\n  </item>}
      end

      puts %{</channel></rss>}

It'd be better, but the HTML on Hacker News is from 1996. I was too sloppy to bother fetching the title of the current thread ;-)

With just adding a shebang line and a content-type header line, it works no problems on Dreamhost as a CGI script. Example: <http://bigbold.dreamhosters.com/hnc.cgi>

Anyway, thanks for giving me the idea. I'm using that now myself.. lol.

<comment><USER3> Nice work Peter. I wrapped this in two lines of Sinatra and deployed it to Heroku, so anyone can get an RSS feed for their username: <http://hackernews.heroku.com/username>

Code is here: <http://github.com/jnl/hackernews-thread-rss>

<comment><USER4> Holy crap, that's handy! Thanks so much!

Out of curiosity (and in hopes of eliciting a reply to see if it shows up in my new Hacker News Responses feed!) would this also be easy to do with Yahoo!Pipes?

<comment><USER2> I wondered about that. I've been using Pipes a little lately but am no expert. I'm not sure if Pipes can deal with operations upon non organized content. You could probably use a service like Feed43 first though.

</comment></comment></comment></comment><comment><USER5> I wrote a silly little Rails app one weekend to help me with problems like this.

<http://SeeURLater.com>

You add a bookmarklet to your browser bookmarks toolbar, then whenever you're on a page that you want to remember to revisit later, you use the bookmarklet which fires up a little popup window, delicious style, that lets you save the URL. Each night you get one email message with all the links you added the previous day, reminding you to revisit them. No links added? No email the next day.

It's stupid simple, and very minimalist right now, but it's been working for me, and you're all welcome to use it. =-)

</comment><comment><USER6> _Is there a way to subscribe to a convo via email or RSS, or do you just constantly have to come back to check for replies?_

There's not really a good way. You just check back every so often, and even then, there's not a good way to view the comments that have been newly added. This has been discussed here before, but HN deliberately tries to keep things simple, so I wouldn't bet on this feature being added anytime soon.

<comment><USER7> There is that 'threads' link ([http://news.ycombinator.com/threads?id=<userid>](http://news.ycombinator.com/threads?id=<userid>)) on the top menu which takes you to your latest comment threads, works pretty well for me. :) No way to get this into email/RSS, though.

<comment><USER6> Yep, that's pretty useful, but it only shows replies to your comments, and not other comments on the same article.

</comment></comment></comment><comment><USER8> I mostly use the "threads" view, and sometimes click on the story title to see whether someone has added a new interesting comment there.

It's a shame there's no way to visually identify new comments, though. When I post up an article and I'm interested in _all_ the comments, after it goes past 50 or so it becomes very hard to track new comments.</comment>


Personal Kanban 101 - <AUTHOR> http://personalkanban.com/pk/personal-kanban-101/ <comment><USER2> While this is good, it goes into the mix with 100s of other similar or same apps (but with a different name). What I have yet to see is how to increase the motivation to actually close the things on the list. Anyone with hints?

I try to be mindful of the things on my list, especially when I add new items on to it, but closing it out is a different story.

<comment><USER3> I hate to be that blockchain guy, but using Ethereum might be fun for this.

Stake some amount of ETH for an issue and when it closes you get it back. If it goes over some time period, the staked ETH begins to burn.

Just a thought. Could make a fun hackathon project. :)

<comment><USER4> Beeminder already does this with normal money

<comment><USER5> Beeminder is cool, but have you seen the sister project Commits.to?

It's basically "Service Level Indicators" for your GTD queue

</comment></comment></comment></comment><comment><USER6> This is just uh, Kanban. The 'Personal' part is irrelevant in practice.

That being said, for both personal and professional projects of any scale, I've found Kanban with elements of GTD mixed in extremely useful.

<comment><USER7> GTD?

<comment><USER8> Getting Things Done is a time management method, described in the book of the same title by productivity consultant David Allen. The GTD method rests on the idea of moving planned tasks and projects out of the mind by recording them externally and then breaking them into actionable work items.

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

<comment><USER9> Here is a good summary of it.

[https://hamberg.no/gtd/](https://hamberg.no/gtd/)

</comment></comment></comment></comment><comment><USER10> I've been iterating on this with Trello in my personal life for about a year now. It's depressing to see all the things I intend to do and am not getting done for one reason or another, but I am dropping far fewer things on the floor than I used to.

<comment><USER5> I've been doing the same thing on "commits.to"

Here you can see all the things I haven't done on time: [http://kb.commits.to/](http://kb.commits.to/) and the backlog of things I already did, of course, too, but I like to focus on those red things at the top of the page.

This is a beta thing that will probably go 1.0(/2.0?) soon, there's no signup page, don't look for a signup page...

</comment></comment><comment><USER11> I've put all work and personal stuff into kanbanflow.com - I'm using several boards and attempt to do everything using their included pomodoro timer that _also_ tracks the time for you. This is the only thing that worked for me to get myself to somewhat be able to account for works/tasks the I've done and it keeps me focussed on important but unpleasent todo-list issues. I didn't look very hard but I've found no self-hosted alternatives that offer the kanban/pomodoro/tracking aspects, if you know something please let me know :)

</comment><comment><USER12> I've been using an open source Kanban webapp called Kanboard ([https://kanboard.org/](https://kanboard.org/)) for a while now, and I'm very happy with it. It's a cinch to self-host, and it has all the functionality I need with multiple boards, the option for multiple user accounts, visualizations, etc.

<comment> francis-io I also self host this with docker using a docker postgres backend to persist data and another container to dump, encrypt and upload to S3. You can also set it to store images and attachments in the database too which makes it easy to back up. It's a bit basic, but it's all I need for a few kanban boards. The mobile interface could use some love, but I tend to use it from my laptop anyway.

My workflow is an "eventually" column that I dump any idea I have for something I'd like to do. As soon as it pops into my head I capture it as a task. Once a week or two sort and expand on these tickets, or split them up if they are too big and pull the ones I want to work on into the "ready" column. I manually limit tasks to 5 in the "in progress" column, but it also contains tasks I'm blocked on.

I really recommend people try out Kanboard if they have the desire to self host. Once I set it up in a docker-compose file along with a backup container, it's needed no management since.

(The author also created an RSS self hosted reader which is also great if you like the idea of simplicity and self hosting / controlling your own data [https://miniflux.app/](https://miniflux.app/) )

</comment></comment><comment><USER13> I've had good success with using Trello and Portable Kanban ([http://edgars.lazdini.lv/portable- kanban/](http://edgars.lazdini.lv/portable-kanban/)) for personal task management.

One advantage of Personal Kanban is that it is a native app, so there is no latency between writing something down, moving tasks across boards. Sadly, it is not open source.

</comment><comment><USER14> "Take back your life with Outlook" is a similar book that outlines how you could make your email more actionable and stay on top of it.

</comment><comment><USER15> Would anyone recommend this for a solo developer?

Personally I'm a fan of a mix of physical sticky notes and Trello, but I'm always open to new ideas. I could see this being more of a hassle than I'd like, but I could be wrong.

<comment><USER16> As a solo developer, you should only be doing the things you are really excited to do, not waging psychological warfare against yourself.

<comment><USER17> Ahah well written. And you're 100% on point.

</comment></comment></comment><comment><USER18> I selfhost Kanboard for work and personal use [https://kanboard.org/](https://kanboard.org/)

It works with a SQLite db, so no migration issues. Highly recommended.

</comment><comment><USER19> I am making a Trello alternative that tries to inculcate Kanban principles..

You can try it out and see if it works for you. It's at [https://www.kanrails.com](https://www.kanrails.com), and currently in Beta (no paywall). Hope to get some good feedback from HN!

<comment><USER20> It's cool that you're working on this! But piece of advice: It would be really nice to see the platform (a screenshot or video) before having to sign up.

<comment><USER19> Thanks for the feedback, I will act on this soon! For now, [https://twitter.com/KanRails](https://twitter.com/KanRails) has some screenshots :)

</comment></comment></comment><comment><USER21> Entire screen blocked by sign-up form? Closed so fast bits were flying off.</comment>


MeWe – The Next-Gen Social Network No Ads. No Spyware. No BS - <AUTHOR> https://mewe.com <comment><USER2> Not enough features to trigger the exodus you need to dethrone Facebook. Facebook beat Myspace because

1) They allowed stalking

2) They allowed stalking on peoples relationship statuses for middle and high schoolers at least in 2004/5.

3) They abstracted away having to hard code your myspace page.

4) The news feed felt like it cured FOMO to a degree (but probably worsed it in actuality)

<comment><AUTHOR> Maybe that is true. But many people have become fed up with points 1 and 2 you mention, and other socially deplorable behaviors that are prevalent in popular social media networks.

Also since the FB/CA scandal and the continuous cycle of bad press about FB, the awareness of privacy issues and data harvesting practices and consequences has risen significantly among the wider public.

This has led to significant growth in their user base, just like it has with Mastodon (which is more of a Twitter alternative).

According to BBC News today they have about 2 million active users, which is not much compared to FB and the likes. But it may be close to a threshold where the network effect kicks in.

And both their business model (paid services) and their use case is different. It is for people that are interested mainly in social communications among a circle of close friends / relatives.

It may be enough to guarantee slow, but steady growth with long-term viability (but not in the big-shot kind of ways that we nowadays define as 'success')</comment></comment>


Why people use CSV instead of DSV? - <AUTHOR> It seems that most of the people use CSV instead of DSV. Why?
At least at the first glance, DSV seems to be a much better format. It is equally powerful, but much more cleaner and reliable.
About DSV and DSV-versus-CSV:
* http://www.catb.org/~esr/writings/taoup/html/ch05s02.html#id2901882
* https://en.wikipedia.org/wiki/Delimiter-separated_values
Consider the following table (column - text):
1 - aaa
2 - bbb bbb
3 - ccc, ccc
4 - ddd "ddd"
In CSV: aaa,bbb bbb,"ccc, ccc","ddd ""ddd"""
In DSV: aaa,bbb bbb,ccc\, ccc,ddd "ddd"
A quote from https://wiki.c2.com/?DelimiterSeparatedValues:
> DelimiterSeparatedValues files and CommaSeparatedValues are equally powerful, but the reading and writing algorithms for CSV have to maintain more state than the ones for DSVs, and so different CSV implementations end up implementing slightly different rules. Therefore using DelimiterSeparatedValues is closer to DoTheSimplestThingThatCouldPossiblyWork.
I don't understand what the author mean. I don't see how _"the reading and writing algorithms for CSV have to maintain more state than the ones for DSVs"_ leads to _"and so different CSV implementations end up implementing slightly different rules"_.
Also, are there any DSV editors on the market? <comment><USER2> CSV has reached a critical mass that will not soon be displaced. Decades and decades of legacy software that consumes and produces CSV files and will never be updated.

I didn't even know the "DSV" acronym until I read enough of your post.

</comment><comment><USER3> Because it's not 10X better than CSV. It's merely "slightly" better than CSV, and there's really no pain or need for DSV at all. It has literally zero performance benefits but introduces a ton of compatibility issues.

</comment><comment><USER4> Afaik CSV is only a subset of DSV as indicated by the name: Comma VS Delimiter separated values. A delimiter can be all kinds of things, while comma is just a comma. However, the name is misused in popular tools, which actually do use other delimiters than comma, but still call it CSV. Any DSV reader in theory should be able to read any CSV file, unless the people implementing something and calling it CSV did not think about the meaning of the words.

<comment><AUTHOR> It's not so. Both CSV (despite of its name) and DSV are able to use an arbitrary character as a delimiter. The real difference between them is the way to _escape_ the delimiter (and to escape the escaper itself). DSV use C-like syntax: \, will be treated as literal comma, \\\ will be treated as literal backslash. CSV use quotation marks for this purpose, and in a completely different way.</comment></comment>


Ask HN:  Do I charge for beta? - <AUTHOR>

I'm working on a app that I want to use freemium on release.  Do I charge for beta?  Will it seem like I'm taking away features when I release? <comment><USER2> Other freemium apps have given the beta away for free with the promise of a lifetime discount for users of the beta. That seems like a nice compromise to me.

<comment><AUTHOR> thanks, that sounds like a good idea. I'm afraid I wasn't clear in the title, I obviously do not mean to charge for the regular part of the site!

</comment></comment><comment><USER3> Figure you're going to be doing 1:150 free signups and 1:2000 paid signups. And that's if you do well. Beta testing is testing all your features with customers being aware that you are not yet 'officially open', so they'll be more forgiving when stuff does not work, but on average it should work most of the time and it is fine to charge for a beta period, you could:

\- charge the full rate, and give credits when you mess up

\- charge a reduced rate during the beta period, but advertise clearly the rates will go up once the beta is over

\- charge a reduced rate and keep on charging that reduced rate after the beta is over for those that signed up during the beta period

The latter has one really nice advantage, retention will be insanely high for those customers because they really don't want to fall back in to the high bracket if they would let their payments lapse.

</comment><comment><USER4> Yes. Charge for the "mium" part for sure. You're not really testing the idea without the paid part being paid. The best reason though is that making money is very motivating.

<comment><AUTHOR> I'm curious about both side of things, but the idea of testing is making sure it works -- would be bad if they paid for something and it doesn't work.

<comment><USER4> Just be very liberal with handing out refunds or service credits. People tend to be quite forgiving.

<comment><AUTHOR> I didn't even consider refunds, thanks!</comment></comment></comment></comment>


2018 Fields Medal and Nevanlinna Prize Winners - <AUTHOR> https://www.quantamagazine.org/tag/2018-fields-medal-and-nevanlinna-prize-winners/ <comment><USER2> For those who don't know, Constantinos Daskalakis, one of the winners profiled, proved that finding a Nash equilibrium (for example, in an economy) is a PPAD-complete problem: if anyone discovers an efficient algorithm for finding Nash equilibria, such an algorithm could be used for efficiently solving all other problems in the PPAD complexity class. PPAD problems are widely considered to be intractable. No algorithm is known for solving them with running time bounded by a polynomial function of input/problem size. The implications in many fields, starting with economics, are clearly significant. Daskalakis's prize is well-deserved.

There is a fantastic introductory MIT video lecture on this work by Daskalakis himself available on YouTube.[a] His enthusiasm and passion in that video lecture are contagious -- matched only by his ability to explain his work in an intuitive manner. Highly recommended for those HNers who have computer- science or economics backgrounds and are interested in computational complexity but are not yet familiar with Daskalakis's work.

[a] [https://www.youtube.com/watch?v=TUbfCY_8Dzs](https://www.youtube.com/watch?v=TUbfCY_8Dzs)

<comment><USER3> How do PPAD-complete problems relate to P=NP/NP-complete problems/etc., if they do at all? Your description of PPAD-complete problems reminds me a lot of descriptions I've read of NP-related problems, but this is the first time I've heard of the term "PPAD".

<comment><USER2> Very -- very! -- informally: in PPAD-complete problems, a solution is known to exist (e.g., there is always a Nash equilibrium), but no one knows of an efficient algorithm for finding the solution. In other complexity classes widely believed to be intractable, such as NP-complete, the problems are decision problems that ask a yes/no question, and no one knows of an efficient algorithm for answering the question. By "efficient algorithm," I again mean an algorithm whose running time is bounded by a polynomial function of input or problem size.

<comment><USER4> so I guess, one way to put it, is to look at the Traveling Salesman Problem?

The decision problem asks "given a set of cities is there a tour shorter than length n?". This is NP-Complete.

However the pop culture version of the problem is "given a set of cities, what is a tour of the shortest possible length?". This would be the PPAD-complete version of the problem, since that solution does exist, it's just unknown and not known to be tractable within polynomial time?

Can the Nash Equilibrium problem have a decision version whose answer is either true or false?

<comment><USER5> TSP is NP-hard for optimisation version and NP-complete for decision version. Consider how you would test that a minimal solution is minimal vs testing whether a given solution has less than a given cost. PPAD is less complete than these two classes.

The decision problem for Nash Equilibria might be, does a second equilibrium exist?

<comment><USER4> Aah gotcha. So you're saying it's easier to verify the solution to a Nash equilibrium problem than it is to verify the solution to the TSP optimization problem?

</comment></comment></comment></comment></comment></comment><comment><USER6> It bums me out that the fields medal is largely considered the top prize in mathematics, yet it has age restrictions. To people outside the field, this means that significant developments may go underreported.

Edit: Let me address the down votes / polarization on this comment: Ageism in the most esteemed prize of a particular field seems obviously wrong to me. Is there a better alternative available? (That said: kudos to the winners! Truly great achievements all around.)

<comment><USER7> I agree. If you look at what a mathematician does they sit around and think. You don't have that sort of luxury if you are from a poor family and have to worry about basic survival. In many cases (not all) the people that complete major accomplishment X at young age Y is from an upper middle class to upper class family with lots of life advantages. Not everyone have these advantages early in life and may eventually get to those positions due to their talents, but it may take them longer given their life situations. There are poor but extremely talented underrepresented people out there the world may never know. We tend to celebrate talent from the elite class, not the poor. The elite are given resources they need to succeed, the poor are often overlooked. This can cause a major talent drain from truly exceptional but unknown folks in the world.

<comment><USER8> Is this a problem only in countries where you have to pay a lot to study? I did not had to pay for my higher education and the people that had a high talent and potentials achieved good results, there was no need to work to make money for studying and if you are good you got positions at University or get jobs at high paying companies.

<comment><USER7> In countries like the US it starts at birth. Families in rich areas will send their children to elite, selective high schools that cost upward $30,000+. Some of these schools have strong math and science curriculum and are considered direct feeders to elite universities, such as the ivies. These poorer kids could be high IQ'd just like the richer ones, but with less access to resources, may be very behind their richer peers. These richer kids will get into the elite schools, while the poor kids may go to lower end ones or not go to colleges at all. Rich parents can hire their children SAT tutors, ensure their children go to good STEM schools, have various college prep resources for their children, while the poor parents don't know anything about college, sent their children to lesser high schools, and have children that may be just as bright, but essentially ones that have no chance to be admitted to the places they otherwise might have gotten into. College admissions at elite colleges favor children from the elite that had the resources to prepare their children for such pedigree. There are exceptions to the rule, but many poor families face deep struggle. This is regardless of however high IQ'd their children may be.

<comment><USER9> I agree with all of this, but don't see what it has to do with age. The best 50-year-old mathematicians also heavily tend to come from privileged backgrounds. Privileged upbringing is simply one required component of what it takes to be among the best mathematicians of your generation.

<comment><USER10> [https://en.wikipedia.org/wiki/Srinivasa_Ramanujan](https://en.wikipedia.org/wiki/Srinivasa_Ramanujan)

<comment><USER11> The exception that proves the rule.

<comment><USER10>
      https://en.wikipedia.org/wiki/Albert_Einstein
      https://en.wikipedia.org/wiki/René_Descartes
      https://en.wikipedia.org/wiki/John_Forbes_Nash_Jr.
      https://en.wikipedia.org/wiki/Alan_Turing
      https://en.wikipedia.org/wiki/David_Hilbert

I think this rule is just wrong. Some mathematicians come from privilege, some do not. Even for the ones who do, it's rare that they come from _great_ privilege for the time. They are the children of mayors, not kings -- professors and engineers, not the financial aristocracy.

<comment><USER9> Now it seems you're moving the goalposts on what counts as privilege. Do you have any quantitatively backed reason to believe Fields medallists are more likely to come from the financial aristocracy than say Abel prize winners?

<comment><USER10> I don't have access to a biography of all the Field's medalists. I am simply pointing out that there is a wide distribution of financial privilege in a list of famous mathematicians that I did not choose. I would argue this is unexceptional, but I point it out because I have trouble with the hypothesis that one must come from privilege to get anywhere in math. If anything I should be asking for the quantitative proof of the hypothesis.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> As all winners are once again male, it brings Maryam Mirzakhani's achievements [1, 2], and tragic passing to mind once again [3].

I'm not suggesting that these winners are not deserving, nor suggesting there is bias. I am looking forward to the day a second woman wins the prize.

[1] [https://www.newyorker.com/tech/elements/maryam- mirzakhanis-p...](https://www.newyorker.com/tech/elements/maryam-mirzakhanis- pioneering-mathematical-legacy) [2] [https://news.ycombinator.com/item?id=14793217](https://news.ycombinator.com/item?id=14793217) [3] [https://news.ycombinator.com/item?id=14776357](https://news.ycombinator.com/item?id=14776357)

</comment><comment><AUTHOR> Funny bit in Venkatesh's interview:

> Accustomed to meeting the highest of standards, he saw his dissertation as > mediocre. Quietly, Venkatesh started eyeing the exit ramps, even taking a > job at his uncle's machine learning startup one summer to make sure he had a > fallback option.

</comment><comment><USER13> As a side note, Caucher Birkar's medal was stolen less than half an hour after the award[1] (link in Portuguese)

1: [https://g1.globo.com/rj/rio-de- janeiro/noticia/2018/08/01/ir...](https://g1.globo.com/rj/rio-de- janeiro/noticia/2018/08/01/iraniano-tem-medalha-fields-roubada-apos-recebe-la- no-rio.ghtml)

<comment><USER14> Here's an article in English

[https://www.scmp.com/news/world/americas/article/2157887/mom...](https://www.scmp.com/news/world/americas/article/2157887/moments- after-winning-prestigious-fields-math-award-rio-kurdish)

</comment></comment><comment><USER15> Australian media coverage of Akshay Venkatesh's Fields medal: [http://www.abc.net.au/news/2018-08-02/fields-medal-aussie- ge...](http://www.abc.net.au/news/2018-08-02/fields-medal-aussie-genius- akshay-venkatesh-wins-prize/10062218)

He graduated from the University of Western Australia at 16 with honours in Pure Mathematics.

<comment><USER16> Him, Tao, Emerton, Kisin, Coates, Calegari Bros... all Australian. Must be something in the water.

</comment></comment><comment><USER17> I find it always a bit sad that I have to accept it that whatever I'll do, I can't reach the genious of their work.

Especially Scholze seems like a very nice guy. I hope he continous his very productive (and hopefully fun!) journy through mathmatics.

<comment><USER18> But keep in mind this, as another comment here mentions:

> Accustomed to meeting the highest of standards, he saw his dissertation as > mediocre. Quietly, Venkatesh started eyeing the exit ramps, even taking a > job at his uncle's machine learning startup one summer to make sure he had a > fallback option.

</comment></comment><comment><USER19> Scholze's win has been predicted for quite a while now, as it turns out. He's a number theorist of stunning originality primarily known for developing a new kind of geometry, that of _perfectoid spaces_ , for arithmetic purposes.

Here's an interview with him that will be accessible to nonspecialists:

[https://www.youtube.com/watch?v=J0QdTYZIfIM](https://www.youtube.com/watch?v=J0QdTYZIfIM)

At a higher level, here's an appraisal of his work by a professional in a closely related area:

      It's not often that contemporary mathematics provides such a clear-cut example
      of concept formation as the one I am about to present:  Peter Scholze's
      introduction of the new notion of perfectoid space. The 23-year old Scholze
      first unveiled the concept in the spring of 2011 in a conference talk at the
      Institute for Advanced Study in Princeton.  I know because I was there.  This
      was soon followed by an extended visit to the Institut des Hautes Études
      Scientifiques (IHES) at Bûres- sur-Yvette, outside Paris — I was there too.
      Scholze's six-lecture series culminated with a spectacular application of the
      new method, already announced in Princeton, to an outstanding problem left over
      from the days when the IHES was the destination of pilgrims come to hear
      Alexander Grothendieck, and later Pierre Deligne, report on the creation of the
      new geometries of their day.  Scholze's exceptionally clear lecture notes were
      read in mathematics departments around the world within days of his lecture —
      not passed hand-to-hand as in Grothendieck's day — and the videos of his talks
      were immediately made available on the IHES website.  Meanwhile, more killer
      apps followed in rapid succession in a series of papers written by Scholze,
      sometimes in collaboration with other mathematicians under 30 (or just slightly
      older), often alone.  By the time he reached the age of 24, high-level
      conference invitations to talk about the uses of perfectoid spaces (I was at a
      number of those too) had enshrined Scholze as one of the youngest elder
      statesmen ever of arithmetic geometry, the branch of mathematics where number
      theory meets algebraic geometry.)  Two years later, a week-long meeting in 2014
      on Perfectoid Spaces and Their Applications at the Mathematical Sciences
      Research Institute in Berkeley broke all attendance records for "Hot Topics"
      conferences.

\- Michael Harris, "The Perfectoid Concept: Test Case for an Absent Theory"

[https://www.math.columbia.edu/~harris/otherarticles_files/pe...](https://www.math.columbia.edu/~harris/otherarticles_files/perfectoid.pdf)

<comment><USER20> [https://www.math.columbia.edu/~harris/otherarticles_files/pe...](https://www.math.columbia.edu/~harris/otherarticles_files/perfectoid.pdf)

there was an extra > appended

</comment></comment><comment><USER21> Is the Fields Medal going to still be relevant in 10 years, when most of the the major mathematical discoveries are made by deep learning and deep reinforcement learning systems? Already systems are learning to reason about concepts [1] and of course there is classical work on proof checkers [2]. It's very likely that the 2028 Fields medal will be awarded to a programmer, not some mathematical super-genius (assuming that the committee is fair, and not biased against machines).

[1] [https://arxiv.org/abs/1806.01261](https://arxiv.org/abs/1806.01261) [2] [https://en.wikipedia.org/wiki/Four_color_theorem](https://en.wikipedia.org/wiki/Four_color_theorem)

<comment><USER22> It's shit like this that tells me we deserve another AI Winter. Just at the very least to drive out the dilettantes and charlatans.</comment></comment>