Build Your Own X - <AUTHOR> https://github.com/danistefanovic/build-your-own-x <comment><USER2> I was expecting build your own XWindows Server.

<comment><USER3> I expected the same and was gladly surprised with this interesting collection. That being said, there's a link under "uncategorized" regarding the X window system :)

</comment></comment><comment><USER4> Is it just me or does all these great educational content out there lead to analysis paralysis? I mean if I wanted to just learn something new and I chanced upon this web page I'd be stumped on where to start.

<comment><USER5> I agree. I'd pay for a "course" that assembled a massive list of practical learning projects like this into something that plots real skill/knowledge growth from beginner to advanced in a structured way.

<comment><USER6> Maybe you're interested in a platform I've built for this kind of thing - [https://readpaths.com](https://readpaths.com). It lets people collaborate to build something like what you describe. People can add links and other people can add connections between these links, resulting in a dependency graph.

</comment></comment></comment><comment><USER7> See also:

[https://github.com/cweagans/awesome-diy- software](https://github.com/cweagans/awesome-diy-software)

[http://aosabook.org/en/index.html](http://aosabook.org/en/index.html)

[https://github.com/tuvtran/project-based- learning](https://github.com/tuvtran/project-based-learning)

</comment><comment><USER8> This is a great resource. There were also some other useful links in the comments last time: [https://news.ycombinator.com/item?id=17054419](https://news.ycombinator.com/item?id=17054419)

</comment><comment><USER9> Is there really no option for build your own Dropbox? ;)

<comment> bra-ket For a Linux user, you can build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem. From Windows or Mac, this FTP account could be accessed through built-in software. [https://news.ycombinator.com/item?id=8863](https://news.ycombinator.com/item?id=8863)

<comment><USER10> What I find interesting that many think before dropbox the only other option was FTP, while in fact there were other cloud based storage providers with good integration on the desktop such as virtual disk drive on Windows, even in late 90s. Dropbox won with PR/marketing I believe. Can anyone list what differentiated them compared to exiting solutions, besides marketing?

<comment><USER9> Ease of use, UX, network effects, positioning (the fact that it isn't called Virtual Hard Disk)

[https://www.windowscentral.com/how-create-and-set-vhdx-or- vh...](https://www.windowscentral.com/how-create-and-set-vhdx-or-vhd- windows-10)

Even if you could get the above working yourself, good luck trying to get someone else to so you can collaborate on a project.

Developers often dismiss 'marketing' as though it is just a fluffy icon or slick website, but how a product is positioned (in Dropbox case for ease of use and the fact that the project is engineered to 'feel like a folder') is absolutely marketing and critical to its success.

<comment><USER10> I meant there were (and still are?) consumer products with simple installers (next > next) which were integrated on Windows as an extra disk - no need to create it manually. Syncing was just that - drag & drop to that disk/folder.

</comment></comment></comment></comment></comment><comment><USER11> Does anybody know about something like this for hardware?

Clocks, motors, stuff like that?

<comment><USER12> Different than your examples. But I just finished making my own "Mostly Printed 3D Printer". I'm a software dev but had basically no experience with Arduino or anything else related to the project. It made me feel like when I was a kid on Christmas with a new large Lego set. One of the most educational and fulfilling projects I've done in recent memory.

It was good timing too because the motherboard on my 3d printer just shorted out. I didn't want to pay the full price ($115) for a replacement board. So I bought an open source board similar to the one I used for my MPCNC. Since I had just put that togheter I knew what I was doing even though there was limited help in converting my particular printer available online.

<comment><USER13> Do you have a blog/YouTube channel or something with more details?

<comment><USER12> I don't. But the linked site has great, detailed instructions

</comment></comment></comment></comment><comment><USER14> Mostly off-topic: anyone know how to set the github.com cookie to never expire? All I want, usually, is to star a project. But all that gets me, usually, is a sign-in screen. And I never seem to have my U2F key handy.

<comment><USER15> Get a password manager?

<comment><USER16> But he mentioned 2FA?

<comment><USER17> Add the 2FA to your password manager! At least 1Password supports this.

Although, you might not want to do this, depending on your threat model. Take care if you do (now both password + 2FA can be obtained by having your password manager compromised, but at least your protected if only your password leaks from some dump)

<comment><USER14> I don't use OTP 2FA if U2F is available. Adding a physical token to a password manager is not an option.

Part of the problem is that GitHub is both a source code repository frontend (calling for tighter security) and a social network (calling for minimal security). So the cookie expiration policy makes sense for the former case but not the latter. A compromise might be letting the user mark a specific browser instance as trusted, so that the site can either set a longer expiration or else not ask for the second factor from that instance.

Anyway, was hoping someone had figured out which cookie held GitHub's token and knew a browser extension that could extend its lifetime. Not really looking to learn about password managers, which I already use.

</comment></comment></comment></comment></comment><comment><USER18> Is there any pointers on how to write your own DNS server? Google does not seem to help much as it shows up mostly hosting your own bind server.

<comment><USER19> Have a look at [https://jameshfisher.com/2017/08/04/golang-dns- server/](https://jameshfisher.com/2017/08/04/golang-dns-server/)

DNS is actually pretty simple if you don't want to implement DNSSEC.

<comment><USER18> thanks!

</comment></comment></comment><comment><USER20> A good reading on why you should understand your building blocks: [https://caseyhandmer.wordpress.com/2019/10/15/on- reasoning-b...](https://caseyhandmer.wordpress.com/2019/10/15/on-reasoning- backwards-from-architecture-to-implicit-requirements/)

<comment><USER21> I read your article, and it's about reasoning in regard to design requirements. I'm curious to hear what you have to say. Would you please provide some explanation as to why programmers should understand building blocks?

</comment></comment><comment><USER22> Very cool! Does anyone know of something similar for a secure network stack, like a "build your own TLS" but very barebones?

</comment><comment><USER23> Happy to see nand2tetris on there, one of the most interesting projects I've done in a long time!

</comment><comment><USER24> Is there something like this for distributed services for computation? For example, I have a large computation job that I would like to split up across nodes?

</comment><comment><USER25> Very neat link. It is true that if you cannot create it, you are simply borrowing someone else's idea and treating it like your own.

<comment> yjftsjthsd-h > if you cannot create it, you are simply borrowing someone else's idea and > treating it like your own.

With the understanding, of course, that this isn't necessarily a bad thing! Understanding is certainly useful, but if it works, then it works, regardless of who built it. Reimplementing, say, a standard library _will_ make you a better programmer, but if just including libraries to do the heavy lifting produces a working system, then that has value too. There are only so many hour in the day; there's value in knowing when to just hand-wave the giants whose shoulders you stand on.

<comment><USER26> .. at least until the abstraction "leaks".

<comment><USER27> I believe all abstracts leak at least a little. It all comes down to trade- offs between what risks you want to take.

</comment></comment></comment></comment><comment><USER28> shameless plug: practical/real world applications step by step [https://github.com/xmonader/nimdays](https://github.com/xmonader/nimdays)

</comment><comment><USER29> Adding "Web Crawler" would be helpful

</comment><comment><USER30> I searched for Xwindow way too long

<comment><USER31> There is an X Window related post at the bottom of the page under Uncategorised.

</comment></comment><comment><USER32> This is dope. thanks for sharing

</comment><comment><USER33> Really nice. I was hoping to find some Smalltalk examples

</comment><comment><USER34> thank u!!!</comment>


Start Making - <AUTHOR> http://startmaking.com/mike-bloomberg/?utm_source=team&utm_medium=mob&utm_campaign=r1

<comment><USER2> Was ist das? A website espousing "Stop Talking" full of videos of people... talking, and nothing else. ???

<comment><USER3> Exactly. There's no indication of what you're signing-up for by giving them your e-mail address.

<comment><USER4> Thanks for the feedback, everyone. Here's some additional info on the program:

We're gearing up to launch our online learning community. We'll be sending invites to our first program, Fundamentals of Entrepreneurship, soon.

We'll make this clearer on the site as well.

</comment></comment></comment><comment><USER5> Note: On websites other than Pandora/YouTube I automatically tune out anything that has a 'play' button on it. If there's no explanatory text, there's no interest for me.

</comment><comment><USER6> I guess they forgot to make the part of the website that explains what it is.

</comment><comment><USER7> I'm at a loss here.

I'm very careful not to reject this kind of "My Success Story" thing straight away. Too often it feels _to me_ like the kind motivational self help with no insights or real lessons to be shared — until I find out someone who watched the same video (or attended the same event, read the same article) got a real insight of some kind from it. [1] That said, I watched a bunch of these videos and got nothing from them. :-(

I'm not subscribing at this time because I'm genuinely concerned I'll be subscribing to videos of people rubbing their success in my face, _and not much else._

[1] Here's something another member of HN fished from one of the videos: <http://news.ycombinator.com/item?id=3617651> (though I support the spirit, I don't particularly agree with that sentence).

EDIT: to be sure, I'm not claiming this website is going to offer lousy content, but I am claiming that they're doing lousy advertisement to that content (well, as far as I'm concerned at least — I'm merely a data point here).

</comment><comment><USER8> "You can't be in that business until you figure out a different way to produce it." That is something a lot of entrepreneurs need to keep in mind.

But seriously, what is this for? A poorly executed campaign if you ask me.

<comment><USER9> > But seriously, what is this for?

Looks more like a campaign prop then a serious endeavor.

</comment></comment><comment><USER10> I checked their index page and what I got from there is that they want you to

... stop talking

... start watching/listening success stories

... start yours (What? stories? :P)

<comment><USER11> Each video is a story of entrepreneur. It's short and to the point IMO.

</comment></comment><comment><USER12> It's like Zombo.com: <http://zombo.com/>

</comment><comment><USER13> Very cute, completely confusing.</comment>


TIS-100 in Infinifactory - <AUTHOR> https://www.youtube.com/watch?v=yMnOEgbm2fE <comment><USER2> This looks very impressive. Are there any kinds of kits that let you make your own (micro)processor in real life?</comment>


Show HN: Essential React, a minimal skeleton for building React apps using ES6 - <AUTHOR> https://github.com/pheuter/essential-react

<comment><USER2> _As few tools as possible (no task runners, etc...)_

:thumbsup: to this sentiment. Whenever I see a "skeleton" starter project that includes tooling that could easily be added at a later date, I usually close the tab.

I think people forget that skeleton projects need to serve an educational purpose to newcomers. Each additional framework/tool that you throw into the mix compromises the skeleton's ability to do that.

<comment><USER3> I had to learn how to use gulp and npm and browserify and and and ohmygodthelistgoeson, and I tell you I feel exactly the opposite.

Trying to bolt tooling onto an existing project is daunting, especially when you're not sure how it works yet. When I started with a fresh skeleton project, two source files, the whole shebang set-up, it was super easy. Just add my extra source files in the dir, and it's picked up.

I love it when a skeleton project includes the entire toolset. I can easily remove stuff I don't need, even when I don't know how it works. But adding JS tooling myself? What a disaster.

Now, I look at my first project, the one I had to add gulp and everything to myself, and it's a complete mess. A lot of time and effort would have been saved if I had just started with a good directory structure right away.

<comment><USER2> _I had to learn how to use gulp and npm and browserify and and and ohmygodthelistgoeson,..._

My point is that you shouldn't have to learn a long list of tools in order to learn the underlying framework the project is trying to introduce.

 _I can easily remove stuff I don 't need, even when I don't know how it works. But adding JS tooling myself? What a disaster._

Really? I've walked in on quite a few existing gulp/grunt/ _insert-latest- hotness_ setups and found them incredibly hard to follow (let alone unwind) without a solid understanding of these tools.

</comment></comment></comment><comment><USER4> Last week I pushed my own isomorphic React starterkit to GitHub, where it was trending:

\- [https://github.com/RickWong/react-isomorphic- starterkit](https://github.com/RickWong/react-isomorphic-starterkit)

The starterkit's focused on the build tools and overall ease-of-use. You can get started in less than 5 minutes. The included example showcases how the server & client work _together_ elegantly to produce the page. The goal of the starterkit is to enhance productivity so there's one single cli command to watch and rebuild both the server with auto-reloads, and client with hot (instant) code updates. Everything happens automatically on-save.

Check it out, it just works. I'm looking for feedback.

</comment><comment><USER5> If you're looking for a nice default React stack, I'd recommend the [http://reapp.io](http://reapp.io) CLI (npm install -g reapp). I'm biased because I made it, but it comes from many months and attempts at building apps with React.

It also gives you inline styles, webpack, etc.

<comment><AUTHOR> Looks pretty cool :) A bit different from the minimal direction I focus on with my skeleton, but seems like a nice tool to accomplish a lot nonetheless.

</comment></comment><comment><USER6> Looks good, and I like that you're aiming to make it lightweight. However, I'd take another "do we need this" pass to eliminate dependency bulk.

For example, I'd avoid having a (somewhat) verbose plugin dependency to shim `console.log` - it's very easy to avoid hitting that incompatibility in most development. Similar argument against including es5-shim - it's super easy to add that if/when you need it, but it's orthogonal to building a react application.

Also, I'd be wary of incorporating Radium - it will narrow the audience because it brings another set of dev requirements., and it's really not _Essential_ to building a react app, it's just a nice-to-have _if_ it fits your dev style.

Will definitely be interested in trying this out next time I'm playing with React, though - thanks for sharing it!

<comment><AUTHOR> Thanks for the great feedback! You make really good points, and I will surely take additional passes to optimize. It's just the beginning, looking forward to further tuning it :)

</comment></comment><comment><USER7> Here's an even more minimal seed project i've been working on (with sass): [https://github.com/badsyntax/react-seed](https://github.com/badsyntax/react- seed)

<comment><AUTHOR> Looks nice! I believe the Webpack sass-loader depends on node-sass instead of the ruby version. Have you found any issues because of that? I remember taking a look at node-sass a couple years ago, and it wasn't up to par with Ruby Sass in terms of functionality and caveats.

I've been meaning to look into Flux as well, seems like an interesting design pattern for large applications.

<comment><USER8> node-sass (which uses libsass) is now on par with the Ruby version as far as I know.

<comment><USER9> It's not quite there yet, but they've made a lot of progress in the last few months:

[https://github.com/sass/libsass/wiki/The-LibSass- Compatibili...](https://github.com/sass/libsass/wiki/The-LibSass- Compatibility-Plan)

[https://github.com/sass/libsass/milestones/3.2](https://github.com/sass/libsass/milestones/3.2)

[http://sass-compatibility.github.io/](http://sass-compatibility.github.io/)

It's at the point where I can use node-sass and Ruby Sass interchangeably for our (very large) Sass code base at my company, but we also don't rely very heavily on the newest features. Worth a try, anyway.

If node-sass doesn't work for you though, there's also a webpack loader for Ruby Sass: [https://github.com/ddelbondio/ruby-sass- loader](https://github.com/ddelbondio/ruby-sass-loader)

</comment></comment></comment></comment><comment><USER10> What benefit does "logic driven inline styles" over using style sheets buy you? That seems unmaintainable for a large project.

<comment><AUTHOR> Good question. Intuitively, having inline styles over style sheets goes against common patterns involving maintainability of large code bases, ditching mixins, variables, and other helpful functions that preprocessors like Sass provide you with.

The idea is that you gain extra maintainability points by co-locating your styling with your logic and DOM, a pervasive design patter in React in general. If I want to style a particular view, I no longer have to concern myself with which stylesheets contain styling for that view. I can simply go to the React Component where that view is owned, and see the styling for it right there.

See also:

\- [https://speakerdeck.com/vjeux/react-css-in- js](https://speakerdeck.com/vjeux/react-css-in-js)

\- [https://github.com/FormidableLabs/radium](https://github.com/FormidableLabs/radium)

<comment><USER11> I know this project uses browserify but by switching to webpack you could achieve the same thing without inline styles by exporting a style bundle. Take a look at the sass-loader[1] package which will let you configure webpack so that you can simply do a require('./style.scss'); and have the style included into either the main or a separate bundle.

[1] [https://github.com/jtangelder/sass- loader](https://github.com/jtangelder/sass-loader)

<comment><AUTHOR> Sweet! I keep hearing good things about Webpack, including good integration with React Hot Loader[1]. Will create a ticket in repo to assess switching over to Webpack :)

[1] [https://github.com/gaearon/react-hot- loader](https://github.com/gaearon/react-hot-loader)

</comment></comment></comment></comment><comment><USER12> Curious how you run apps when developing. Do you run "npm run-script watchify" and "npm run-script server" in two separate terminals? I always found watchify to be an odd way to go about building assets.

In my company we use Staticr [1], a way to express generated asset bundles (Browserify, SASS or anything else) using JS.

You basically declare the endpoints; e.g.:

        var endpoints = {
          "/js/app.js": function() {
            return browserify("app.js", {...})
              .transform(babelify())
              .bundle();
          },
          "/css/app.css":  // ... similar with node-sass
        };

In server.js or whatever, you simply include a check for the environment and mount the endpoints like so:

        if (process.env.NODE_ENV === 'development') {
          var serve = require('staticr/serve');
          app.use(serve(endpoints));
        }

Now whenever someone requests /js/app.js, it will be automatically built on the fly using Browserify. To speed things up (a lot!) we have a small module that keeps Browserify's cache in memory, which I can show you if you're interested.

Then, in production, you simply include the following as part of your deployment script:

        staticr endpoints.js public/

It will take each endpoint, generate the output, and write the file to public/. This assumes you have a docroot, or your Node.js app has a static middleware, at public/.

Of course, Webpack gives you a more extensive toolset, but Staticr is a lot simpler.

I'm curious, do you need es5-shim when you have Babel (ie., "babel/polyfill") which uses core.js, which I believe installs most of what is needed? Actually Babel only requires "core.js/shim"; for ES5 you might need to require "core- js/es5". But it would probably be better to use one polyfill library instead of several.

[1] [https://github.com/bjoerge/staticr](https://github.com/bjoerge/staticr)

</comment><comment><USER13> My first reaction was that I don't need this, but upon looking through it, it saves a lot of time. However simple individual steps are, having them already done helps a lot. Thanks.

<comment><AUTHOR> Glad you found it helpful!

</comment></comment><comment><USER14> Am I the only one who thinks it is sad that one needs a "skeleton" to write a minimal app?

<comment><AUTHOR> I don't see "needing" it as much as it being a guide to help people who are interested in investigating a new library or framework to become familiar with some of the more popular conventions and techniques.

Also, don't see why it hurts to start large projects with a skeleton, and having that skeleton removed eventually once the ground work has been laid out. Any constraints, albeit redundant at times, can help with initial stages.

</comment></comment><comment><USER15> Very curious what zsh plugin you're using to render out that `la` screenshot tree?

<comment><USER16> Also digging the color scheme, any one know what it is?

<comment><USER17> Looks like SMYCK to me, which I love: [http://color.smyck.org/](http://color.smyck.org/)

</comment></comment></comment><comment><USER18> This yeoman generator is also good start : [https://github.com/newtriks/generator-react- webpack](https://github.com/newtriks/generator-react-webpack)

<comment><AUTHOR> Looks good. One of the principles of my skeleton is to keep tooling down to a minimum. I am taking a look at Webpack and Hot Loader currently, but without the overhead of Yeoman, Grunt, Karma, etc...

That is not to say that these tools don't have value, and if a developer wishes to include them, it should be a fairly straightforward addition.

</comment></comment><comment><USER19> I'm glad this thread found its way here today. I was just Google-ing for something like this, just a few days ago. Thanks HN community :) Time for me to choose who to fork...</comment>


'Delay-o-tron' to iron out commentary glitches - <AUTHOR> http://www.abc.net.au/news/stories/2008/10/31/2406750.htm

<comment><AUTHOR> Solving the problem of _"... how can you listen to the radio commentary while you watch the match on TV? ..."_

You can read the technical bits here ~ [http://184.108.40.206/search?q=cache:vRdCFZOdsM8J:www.endeav...](http://18.104.22.168/search?q=cache:vRdCFZOdsM8J:www.endeavour.unimelb.edu.au/images/brochures/Project_Descriptions.pdf+Daniel+Monteiro+and+Ben+Vogler+melbourne+uni&hl=en&ct=clnk&cd=4&gl=au&client=firefox-a) search for _"JE2: The Gerard Whateley Synchrotron"_</comment>


Lost Dog (2005) - the-enemy http://www.susanorlean.com/articles/lost_dog.php <comment><AUTHOR> WTF did I just read?</comment>


Why people have Google Search completely wrong - <AUTHOR> http://julianyap.com/2012/01/31/why-people-have-google-search-completely-wrong.html

<comment><USER2> "In conclusion, Google+ and "Search, plus Your World" isn't about making the web or search better. It's making directed advertising better."

Indirectly, Google et al _must_ make search better, because otherwise we (the "product" being sold) do not come back ...

</comment><comment><USER3> Although I agree with many bits of this article, I find it misguided. First of all, I think everybody knows by now that we are using a product and are not the costumers. Thinking that people do not know that makes this article have a "smarter than thou" feeling.

Secondly, I think Google, as most other companies out there, do not just focus their energies in one revenue stream (although it may be the biggest one) and do not create products for a single reason. So, thinking Google+ is just a way to make directed ads easier is oversimplifying things. That may be part of it, but not letting Facebook create a Walled Garden is another part, and create loyal users is another one.</comment>


When Object-Oriented Programming Isn't - <AUTHOR> http://www.sicpers.info/2017/08/when-object-oriented-programming-isnt/ <comment><USER2> Newbiee here. How to write the lines in a OO mode?</comment>


World's most funded AI company, Sentient Technologies - <AUTHOR> http://www.telegraph.co.uk/technology/news/11939915/Worlds-most-funded-AI-company-Sentient-Technologies-launches-online-shopping-product.html <comment><USER2> I think the real news is this :

"Sentient has already invented an AI nurse that was tested out with Massachusetts Institute of Technology to detect sepsis [...] it was then able to predict sepsis infection 30 minutes ahead of time, to an accuracy of 91 pc. "This is very meaningful, because it actually saves lives..."

A shop assistant does not have that impact, looks like a PR gimmick and some extra shoes sold.

<comment><USER3> I agree. That one jumped out to me, too. Reminds me of one of the first expert systems, MYCIN, that diagnosed and prescribed for bacterial infections with hospitals on ancient, AI tech. The system did better than doctors generally. Need more tech like this focused on whatever we can in medicine.

Additionally, I think a large investment of it put into both fixing software bugs and software re-engineering w/ bug-for-bug compatibility from legacy platforms would be worthwhile. A crisis may loom as all the enterprise apps written for obsolete, lock-in tech just get larger and more incomprehensible with builders retiring or dying off. Flexibility demands being able to adapt best platform for the job but seems like survival in that space.</comment></comment>


The WSJ was accidentally too honest about Uber in print - <AUTHOR> https://twitter.com/NeilAnAlien/status/627873374505562112

<comment><USER2> Sounds like they need a loyalty program, so customers have an incentive not to simply take "Uber or Lyft, whichever isn't surging right now."

So: UberMiles -- earn and redeem miles when you take an Uber. And there can be Gold, Silver, and Platinum levels you earn for taking more Ubers -- at the higher levels, you could get complimentary space-available upgrades, special discounts, or insulation from surge pricing. And they could partner with a bank to market an UberMiles credit card (earn one mile for every dollar you spend), and with Hilton to offer Points&Miles™ to hotel guests. And the miles can expire if there's no account activity for 18 months. And people can rant and complain and swear they're going to take all their business to Lyft when Uber inevitably changes the miles redemption chart to become more profitable.

<comment><USER3> IIRC Capital One had some sort of Uber promotion recently so they are likely testing the waters for such a move.

</comment></comment><comment><USER4> They only have their name brand, and Uber has to be aggressive because they're operating in a space with little barriers to entry. They cannot raise their prices - people do not depend on Uber and can switch at zero costs.

</comment><comment><USER5> What worries me is that the online version will become the definitive version of the story. There is no way to know, without directly comparing against the print version, how the online version differs from the print version.

At least there is newsdiffs.org for tracking changes for the online version of the New York Times (and cnn.com, politico.com, washingtonpost.com, and bbc.co.uk).

</comment><comment><USER6> The print version has the virtue of actually explaining a plausible mechanism by which they can become profitable. Building enough loyalty (or other form of competitive moat) to allow them to set a larger margin between customer price and driver pay, is a coherent strategy. The online version of the article, by contrast, just vaguely says that maybe if they grow they will (somehow) become profitable.

</comment><comment><USER7> At least it is not as bad as banks. I wonder what would happen if for profit banks did not have interest bearing savings accounts.

</comment><comment><USER8> "Build loyalty to charge people more and pay drivers less". The fact they redacted this paradoxical statement is all telling.

<comment><USER9> It's not paradoxical, there is no contradiction in it.

They really hope to capitalize on their first mover advantage and name recognition to be able to raise prices, lower compensation and still keep the customers and drivers.

<comment><USER8> how does one build loyalty by fucking people over?

<comment><USER10> How is profit "fucking people over"?

They aren't profitable now. Clearly that's unsustainable. To become profitable they need more revenue than expense. There are not many ways that this can happen, and one given is that the fare charged must be higher than what the driver is paid for that trip.

<comment><USER11> say, theoretically prices double, and you hear reports of uber drivers getting rate cuts.

How likely is this to engender feelings of brand loyalty in you.

<comment><USER12> You mean like virtually every corporation in America over the past 20-30 years?

No one will notice.

The few who do will be "spineless socialists."</comment></comment></comment></comment></comment></comment>


The Scandinavian Secrets to Work (and Life) Satisfaction - <AUTHOR> https://blog.trello.com/scandinavian-secrets-to-work-and-life-satisfaction <comment><USER2> I'm always a bit sceptical about all the reports about scandinavian countries "happiness" when they also seem to consume global record numbers of antidepressants and alcohol..</comment>


Tim Berners-Lee: Cool URIs don't change (1998) - <AUTHOR> http://www.w3.org/Provider/Style/URI <comment><USER2> Funny to think how 'document based' the web was back then. The concept of webapps must have been completely foreign. I'll bet he _really_ hates URL shorteners.

Interestingly, the examples he gave of good URIs (e.g., <http://www.nsf.gov/pubs/1998/nsf9814/nsf9814.htm>) are still working 12 years later, while the bad ones are broken (e.g., <http://www.nsf.gov/cgi- bin/pubsys/browser/odbrowse.pl>).

<comment><USER3> I miss the document based web. Actually what I miss is the "amateur web". I remember in 1994, when I first got the internet, typing in "Star wars" and visiting the many many fansites with random pictures, midi files, fan fiction, etc. Those sites don't exist any more. Sure, there are still some amateur sites out there, but they're always pretty professional, not the type done by complete-amateurs who just want to share something they're passionate about.

Do a Google search for any hobby, fictional universe, sports team and see how many pages it takes you to find a "geocities" type of site.

<comment><USER2> Tools have been built to help amateurs better share what they want. I guarantee Tumblr + Posterous + Weebly + fanfiction.net + wikia have far more 'amateur' sites and content on any topic you're interested in, than the entire internet in aggregate in 1994.

<comment><USER3> +1, very good point. The discovering these sites is much harder than in 1994. Professional sites dominate search to a degree that finding amateur sites requires much more work.

</comment></comment></comment></comment><comment><USER4> I really like the historical note: "Historical note: At the end of the 20th century when this was written, "cool" was an epithet of approval particularly among young, indicating trendiness, quality, or appropriateness. In the rush to stake our DNS territory involved the choice of domain name and URI path were sometimes directed more toward apparent "coolness" than toward usefulness or longevity. This note is an attempt to redirect the energy behind the quest for coolness."

</comment><comment><USER5> The best snippet for me: "Think of the URI space as an abstract space, perfectly organized. Then, make a mapping onto whatever reality you actually use to implement it."

</comment><comment><USER6> This is a must read!

Every company I have worked at with legacy sites to port/maintain have yet to allocate any resources to this problem. No matter how often I suggest it. Now we have a great reference for our bosses and selling to clients of the importance of it.

</comment><comment><USER7> Also see <http://daringfireball.net/2007/03/blank_slate> and scroll down to "Yes, even URLs are designed"

</comment><comment><USER8> One mitigating tactic for websites linking other people's content is to create a local copy and display that copy if the original content has been removed or de-linked. Though this may not be 100% kosher copyright-wise.

But speaking of preserving old link structures, would you suggest a strategy for doing so?

<comment><USER9> On my own blog, I have gone through several movements, either from one blogging platform to another, or more recently, deciding that I liked /blog/title/ better than /blog/year/month/title/. In each case, I have been very careful to ensure that I have a sufficient set of mod_rewrite rules configured in Apache that any of my old URLs will redirect the user to the new URL.

In the case of changing structure wholesale, it was as simple as setting up `RewriteRule ^/blog/\d+/\d+/(.+)$ /blog/$1 [L,R=301]`

In previous cases, I had to get a lot more specific; eg. articles with the same title would have different generated URLs depending on the blog software, so I would need to handle that as a redirect as well.

</comment></comment><comment><USER10> A classic. This keeps getting more credible as it ages. Now it's been at the same URI for 13 years.</comment>


A New Runtime for Nim - <AUTHOR> https://nim-lang.org/araq/ownedrefs.html <comment><USER2> Disclaimer: I really love Nim and have written a fair amount in it, but I'm not a language designer guy.

I like that this will make multithreading easier with shared memory, but I worry this will make the language more complex and delay 1.0. I'll have to read the linked list examples a few times before the owned pointer model sinks in.</comment>


Electricity generated with water, salt and a three-atoms-thick membrane - <AUTHOR> http://phys.org/news/2016-07-electricity-salt-three-atoms-thick-membrane.html <comment><USER2> Looks like there is something wrong with numbers. Article says 1 square meter will be enough to produce 1MW of energy. But, 1MW of energy will be surely enough to desalinate water for covering 1 sq. m., isn't it?

So, place it at sea-side and get "infinite" amount of energy.

But, more probable, author of the article confused 1MW and 1mW.

<comment><USER3> The paper seems to be here, although all I'm getting back right now is long load times and a generic error page:

[http://www.nature.com/nature/journal/vaop/ncurrent/full/natu...](http://www.nature.com/nature/journal/vaop/ncurrent/full/nature18593.html)

I found a copy elsewhere (won't link, piracy, etc) and it does indeed claim an estimated density of 1 _megawatt_ per square metre.

There definitely seems to be _something_ missing here, because another paper I found ([http://www.ijesd.org/papers/243-B20001.pdf](http://www.ijesd.org/papers/243-B20001.pdf)) claims a typical reverse osmosis plant processing seawater uses 3-10kWh to desalinate a cubic metre of seawater.

They don't have any information on water consumption (which I'm really curious about), but the break-even point on energy consumption is ~333m^3/hr and, as a layman, that seems like a pretty high flow rate for how they describe this working.

</comment></comment><comment><USER4> Other potential problems are the life span of the membrane, and how to keep it clean. I would imagine that seawater is full of impurities that would cause havoc with a membrane in real world use.</comment>


Woman who inherited fatal illness to sue doctors in groundbreaking case - <AUTHOR> https://www.theguardian.com/science/2018/nov/25/woman-inherited-fatal-illness-sue-doctors-groundbreaking-case-huntingtons <comment><AUTHOR> HN talks about privicy problems of genetic testing from companies like 23andme (and all the others, I'm not singling out any company here).

This article talks about a tricky medical problem: do doctors tell children about the genetic diseases their parents have?</comment>


Stop the $6T Coronavirus Corporate Coup - <AUTHOR> https://mattstoller.substack.com/p/stop-the-6-trillion-coronavirus-corporate <comment><USER2> > Authorization to bail out money market funds, multi-trillion dollar > unregulated bank-like deposits for the superrich.

A puzzling characterization of money market funds.

> Authorization for the the government through the Federal Deposit Insurance > Corporation to guarantee trillions of dollars of risky bank debt.

Hrm . . . normally the FDIC guarantees _deposits_. It's in the name. It's also congruent with the previous point. What bank debt is this referring to? Is he sure that the FDIC isn't just guaranteeing a larger limit on deposits?

</comment><comment><USER3> Written by someone who doesn't understand how the Federal Reserve works.

<comment><USER4> I don't follow. Unless you're firmly on the MMR bandwagon (which is still a small minority position among economists), printing money and giving it to corporations is ultimately allocation of capital that doesn't go to other productive uses.

<comment><USER5> MMR? Do you mean Modern Monetary Theory aka. MMT?</comment></comment></comment>


The Rich Banker - <AUTHOR> http://www.novelog.com/the-rich-banker/

<comment><USER2> A quote: "When we get to a place it is hard to see how that places is anything other then the importants we have attributed to it."

Honest to God. It's time for you to segue into creating videos of your thoughts and abandon writing altogether. You're definitely a member of the YouTube generation.

<comment><AUTHOR> Thanks for the constructive criticism.</comment></comment>


Show HN: Lucy, a smart robot that bends sunlight where you want it - <AUTHOR> http://www.preorderlucy.com

<comment><USER2> Did you actually get coverage on Wired, TechCrunch, etc.? I checked all 4 sources and there's no recent mention of a Lucy. (aside from the bad movie last year).

That's very unethical.

<comment><USER3> Solenica (which makes Lucy) was covered in TechCrunch [1], Mashable [2], Wired [3], and Forbes (as part of Qualcomm's accelerator) [4].

[1] [http://techcrunch.com/2013/06/18/sunnybot/](http://techcrunch.com/2013/06/18/sunnybot/) [2] [http://mashable.com/videos/2543680924001/](http://mashable.com/videos/2543680924001/) [3] [http://www.wired.it/economia/business/2014/10/23/i-progetti-...](http://www.wired.it/economia/business/2014/10/23/i-progetti- smart-in-mostra-bologna-per-sce2014/) [4] [http://www.forbes.com/sites/jenniferhicks/2015/05/30/qualcom...](http://www.forbes.com/sites/jenniferhicks/2015/05/30/qualcomm- launches-robotics-accelerator/)

<comment><USER2> Ok, I take that back. Seems fair.

Although I _really_ think startups should reference the exact articles where the press has covered them if they indeed have received coverage.

</comment></comment></comment><comment><USER4> in a dark apartment in taiwan right now. love this idea. huge potential. you guys have patents?</comment>


Blizzard officially cancels MMO Titan after seven years in development - <AUTHOR> http://www.polygon.com/2014/9/23/6833953/blizzard-cancels-titan-next-gen-mmo-pc

<comment><USER2> This makes me sad for some reason. I'll never forget the sense of wonder I felt the first time I played vanilla WoW.

I found the world to be incredibly compelling and rich, and got really sucked in. The world felt vast, and I spent hours just wandering around and exploring. It was also my first MMO and the thought that I was playing with thousands of other players in real time was amazing.

<comment><USER3> I know what you mean.

I didn't particularly care about Titan (it was vaporware from the start IMO), but I've only felt what you're talking about twice since the release of WoW. The first time was in FlyFF - a god awful F2P/P2W korean MMO. It was the epitome of crap but it did let me _explore_ which I feel is something not too present in MMOs nowadays. There is nothing quite like exploring high level zones as a low level, being somewhere you shouldn't be, a constant danger and a feeling of helplessness when you are spotted by a monster.

The second time was recently, in Wildstar. I've had to stop playing it for lack of time but I dearly miss it, it's the only MMO I actually liked since WoW.

</comment></comment><comment><USER4> This: " trying to do the right thing and build the right, smart product". That means quick, flashy and cheap. Building an ambitious MMO is not those things.

I wish somebody was still building games that weren't necessarily 'smart', but were instead 'fun' or 'fascinating' or anything that means something to the player.

</comment><comment><USER5> This should probably be the linked article: [http://www.polygon.com/2014/9/23/6833953/blizzard-cancels- ti...](http://www.polygon.com/2014/9/23/6833953/blizzard-cancels-titan-next- gen-mmo-pc)

<comment><USER6> Thanks—changed from [http://www.kitguru.net/gaming/matthew-wilson/blizzard- offici...](http://www.kitguru.net/gaming/matthew-wilson/blizzard-officially- cancels-mmo-titan-after-seven-years-in-development/).</comment></comment>


A Language Is More Than a Language - <AUTHOR> https://docs.google.com/presentation/d/1_aAFyzVtwk5yVw2M57EkFeA1vyo_OujwUB3kb35Zm3Y/edit#slide=id.p3 <comment><USER2> "And you're right: we were not out to win over the Lisp programmers; we were after the C++ programmers. We managed to drag a lot of them about halfway to Lisp. Aren't you happy?"

\-- Guy Steele - Sun Microsystems Labs (about Java)

source: [http://www.ai.mit.edu/~gregs/ll1-discuss-archive- html/msg040...](http://www.ai.mit.edu/~gregs/ll1-discuss-archive- html/msg04045.html)

<comment><USER3> Back then I was disappointed with the state of C++ compilers across vendors and OSes (the standard was still being defined).

Meanwhile, I also had discovered that it was possible to use a GC enabled systems programming language for writing OS (Oberon and Modula-3). And was exposed to Prolog, Caml Light, Smalltalk and Eiffel.

So Java seemed a nice compromise for industry adoption. Our university adopted it right away for its distributed computing and compiler development classes.

However I never liked the religiosity about a JIT, preferring the .NET way of having a choice between JIT and AOT.

So I still like C++ a lot, but unless I am shaving off ms or bytes from a specific algorithm or writing portable code for mobile devices, I tend to use other languages.

<comment><USER4> > However I never liked the religiosity about a JIT, preferring the .NET way > of having a choice between JIT and AOT.

I wonder how much of this comes down to the fact that Java methods are virtual by default and in C# they are not. The former makes devirtualization more important and is harder to do ahead of time.

<comment><USER3> Might be. Most other OOP languages back then (mid-90's) used static by default.

</comment></comment></comment></comment><comment><USER5> I think what Bruce Eckel is arguing here is that the creators of Java and the Java API would have done a much better job if they had applied the lessons in advance that they learnt from years of Java being actively used. Which is, in my opinion, a somewhat unfair and unrealistic point of view.

But yes, a real Java 2 or Java++ or next generation Java would indeed be a good thing.

<comment><USER6> You don't have the benefit of retrospection in advance, it's true.

But you can take more time before releasing major components/features, and try to get them right. Eckel thinks they could have done better if they hadn't been in such a hurry, and focusing on marketting over quality, and maybe had some more skilled people involved. Especially in a platform so committed to backwards compat, if you release something designed poorly, you're stuck with it.

I guess the 'marketting' rejoinder would be if they had taken more time before releasing an attempted solution, it might have prevented Java's success in the 'market'.

I don't know. But I think it's general consensus at this point that eg J2EE API's and design was/is pretty awful -- and I don't think it actually takes retrospection to see that, it was awful right away and was seen so by many right away too.

<comment><USER7> Was J2EE obviously awful at the time? I'm honestly not sure.

I had a summer job working on EJBs at a company that had built everything on CORBA. It was basically a research project; they knew they had to switch to EJB, because it was going to be the standard (ha), and they wanted to know how. This was in the EJB 1.x era, so somewhere between 1998 and 2001 - i don't remember exactly when!

I remember thinking that it was all rather complicated, especially around persistence. And i remember being appalled that beans didn't actually implement their interfaces. We came up with some rather complicated pattern to work around that - i think there was a master interface where all the methods threw RemoteException, then the bean interface trivially extended that, and there was a local interface that extended it but overrode all the methods to not throw RemoteException, then the bean implemented that. And i spent most of my time there wrestling with the fact that the performance characteristics of local and remote calls are very different, and how that impacted design; we ended up with DTOs mirroring every entity bean to save network round-trips.

But the thing is, there was nothing else around at the time that did anything similar. Remote object invocation, with declarative transactions, and container-managed object lifecycles, including pulling objects out of a database on demand. That seemed like saucer tech! So it seemed, glaring design flaws aside, fair enough that it was complicated. Hey, i might have to write an XML document, but at least it wasn't ten thousand lines of C++.

<comment><USER6> If, right off the bat, you had to come up with some complicated patterns to work around EJB's.... to me that says, yes, it was obvious at the time that J2EE/EJB was awful.

There might have been nothing at the time _in mainstream languages/platforms_ (important distinction) that did something similar, but that doesn't mean they coudln't have done better if they had spent more time on it. I mean, even if there's nothing better to use as a model (debatable), is it acceptable to release something that requires complicated workarounds? (I guess that's debatable too; but we know what side Eckel comes down on!).

(Does anyone still want remote object invocation these days? I ask for real, I don't know. In my circles, it seems generally to have been found to be a mistaken thing to try. Based on experiences like yours in fact. So the other question is whether 'something similar' is even what was needed -- again, I think, a design question that takes time. Figuring out the right features of the right solution to actual problems is design.).

<comment><USER3> > here might have been nothing at the time _in mainstream languages/platforms_ > (important distinction)

Going off mainstream, I read somewhere that Objective-C WebObjects framework was the inspiration to J2EE, given the Objective-C work going at Sun back then.

Then there was also Taligent, but it was short lived as well.

> Does anyone still want remote object invocation these days?

Apparently yes, now they call it REST and microservices.

<comment><USER8> But noone tries to fake them being the same as local calls

<comment><USER3> Except almost everyone is providing SDKs that do exactly that. Should I provide links?

<comment><USER8> Really? Every 10 years the same mistakes roll around again, I guess.

<comment><USER3> For example, PayPal SDK

[https://developer.paypal.com/docs/classic/lifecycle/sdks/](https://developer.paypal.com/docs/classic/lifecycle/sdks/)

<comment><USER8> I don't know whether to laugh or cry.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I have no doubt that you cannot win the 'war' on the language front. All those bloggers, internet and conference luminaries that never write real-world production code miss the point. It's about the platform, the whole programming ecosystem not about 'beautiful' syntax. That's why Java - the platform (Java EE, Android, ...), not the language - won and is still going strong. New languages (D, Rust, ...) have not the ghost of a chance unless they are able to create a platform.

<comment><USER10> I agree. But don't forget that it took years of hard work to build up enough of "Java the platform". Things that help there is having traditional man- power, which costs money, and having a strong community, which takes lobbying/evangelising/advertising. In a way, all those "luminaries" you mention may or may not miss the point individually, but the buzz it creates is necessary to build the community that makes the platform, and that in turn makes the language succeed. _Developers, developers, developers, developers, developers..._

</comment></comment><comment><USER11> Can someone please clarify me... Not defending Sun/Oracle decisions in here but isn't Bruce Eckel confusing Java as a language with some Java libraries, of which some happen to be provided via JDK? This was what I felt while reading this presentation.

Thanks

</comment><comment><USER12> Sounds like a good argument for Clojure.

<comment><USER13> And the Oracle legal shenanigans seems like a good argument for Clojure on the CLR. I don't know how mature the CLR ecosystem is on Linux, but the licensing at least seems ok.

<comment><USER14> > And the Oracle legal shenanigans

You mean the Google legal shenanigans that tried to find loopholes around two Java licenses (one of them completely open-source, and the other would have cost them $25M) that would hopefully hold up in a court case (which they were sure would follow, because they went straight after Sun's business), failed, and in the process forked the ecosystem?

Oracle did exactly what Google dared them to do (after a reprieve while Sun was dying). Only, to get what they wanted -- payment for the use of Java _not_ under its open-source license -- they used whatever legal argument they could come up with, in the hope that one would stick. One did (well, at least partially), and now Oracle is at fault? This entire court case -- except the decision -- was orchestrated by Google. They could have avoided the whole thing by either abiding by the open-source license (which, BTW, is exactly the same as Linux's) or by paying Sun $25M. Oracle, OTOH, had no choice because Google went after them with their own weapon.

Oracle didn't just go after someone who'd forked Java. They went after someone who'd forked Java with the intent to harm on of their main income sources from Java (at least at the time), _while_ forking the ecosystem and breaking compatibility -- the ecosystem's prime directive -- and all that while Java was available under an open-source license, which Google rejected. They don't care about the principles of copyright. They just happened to use that in their arsenal of legal tools to go after a company that they believed had harmed them.

Then, Google's PR tried to terrify the world with the possible repercussions of the one argument that did stick by blowing it out of proportion and neglecting to mention that it hardly applies to _any_ software these days.

Neither of these companies is a saint in this story. They are just two corporations playing their parts. But Google was the one who could have stopped all this, and blaming the whole thing on Oracle is just ridiculous.

<comment><USER15> Frankly, one doesn't need to know anything about the case to find the idea that Google would balk at the request for a single payment of $25M to ensure that Android was free from claims of infringement is clearly nonsense. They spend more than that per year in food for their employees.

Of course, that's not true, and you know it's not true, since you replied earlier this year to someone who explained that the _alleged_ offer was $20M + 10% of Android's revenue (capped at $25M) for a _three year license_ \- and this was in 2006, years before Android had even launched. FSM knows what Oracle would have demanded after Android was a proven success and Google had caved earlier.

Of course, one may still think Google should have paid whatever Sun/Oracle asked for, but let's not spread misinformation.

<comment><USER3> " Just because Sun didn't have patent suits in our genetic code doesn't mean we didn't feel wronged. While I have differences with Oracle, in this case they are in the right. Google totally slimed Sun. We were all really disturbed, even Jonathan: he just decided to put on a happy face and tried to turn lemons into lemonade, which annoyed a lot of folks at Sun. "

\-- James Gosling, [http://nighthacks.com/roller/jag/entry/my_attitude_on_oracle...](http://nighthacks.com/roller/jag/entry/my_attitude_on_oracle_v)

<comment><USER16> Err, if he really felt that way, why did he join Google?

<comment><USER3> No idea, but he didn't stay there long.

If you check his blog he has another posts about the whole issue.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> Don't like Java? Try COBOL.

Then you will like Java.

</comment><comment><USER18> tl;dr: try elm

<comment><USER10> For those who don't want to google it: [http://elm-lang.org/](http://elm- lang.org/)

</comment></comment><comment><USER19> A conference in Crested Butte, Colorado in February is kind of a bad idea. I lived up there one winter and it is very very cold and covered in snow and ice. It's the kind of place/season where you pretty much need special clothes to walk a block.

Full disclosure: I grew up in SF and didn't really believe in seasons until that year I spent in CO, so take this comment with a grain of salt or better yet a big bag of that road salt they use to melt the ice on the roads, and a four-wheel drive vehicle with working heater, and winter underwear and a warm preferably-goose-down jacket and boots and "smart wool" socks, and hat and mittens. Seriously though, unless you like to ski or you're just really into ice and being cold and you can't get to Antarctica going to Crested Butte in winter is nuts. Nice town. Freezing cold.</comment>


Amazon's potty problem: Too many dudes, not enough toilets - <AUTHOR> http://www.geekwire.com/2015/amazon-employees-biggest-complaint-not-enough-mens-bathrooms-for-all-the-dudes/ <comment><USER2> As an employee of a similarly large company with similar demographics, please allow me a rant:

No surfing the internet.

No candy fucking crush or whatever it is you sociopathic mouthbreathers play on the commode WITH THE SOUND ON.

No texting your grandmother/spouse/lover/gerbil.

And finally, for the love of all that is holy, leave the laptop at your goddamned desk, you fucking savages.

Sit. Shit. Split. That's it</comment>


Haskell vs Java job applicants - <AUTHOR> http://www.haskell.org/pipermail/haskell-cafe/2009-January/054072.html

<comment><USER2> One thing about getting something like a Haskell job that's rarely mentioned is it seems like it's very much an all-or-nothing proposition. Casual or intermediate dabblers who like learning new things like Haskell but aren't total wizards get no points.

A lot of the investment bank openings for functional programmers want someone who's doing a PhD in programming languages, from what I've seen, for example.

<comment><USER3> That's not necessarily true; for things like designing proprietary languages themselves optimized for financial risk modeling, yes, you better have a CS Phd. But it's definitely not the case that everyone who touches functional programming on Wall Street has a Phd, and if you interview with the right group within an investment bank, the technical interviewer might very well be impressed with your Haskell experience, especially if you're going to be working closely with quants (provided he knows what it is; there's a really massive range in CS know-how within investment banks, but that's another story)

</comment></comment><comment><USER4> I think it's more that people who program in $OBSCURE_LANGUAGE are much more likely to have picked up that language out of interest, rather than from wanting to have a cushy, decent-paying desk job.

</comment><comment><USER5> I wouldn't say that just because someone knows Haskell they are suddenly a good programmer. Some schools use Haskell for their intro programming classes nowadays.

<comment><USER6> Which schools are that?

<comment><USER7> There are some listed on the 'Haskell in education' page on the Haskell wiki.

<http://www.haskell.org/haskellwiki/Haskell_in_education>

</comment></comment></comment><comment><USER8> It's still silly to hire a "Blub Programmer", regardless of whether Blub is Haskell or Java.

<comment><USER9> What if its for a blub job, say, maintaining 20-year-old billing systems? There's no value proposition in doing a rewrite, and the Haskell guy would get bored silly, while the blub guy would be content, and plug away, doing solid work for years. He makes a career out of it. And he was cheap. Everyone wins. It happens all the time. It's perfectly reasonable to hire a blub programmer. Whether it's reasonable to _be_ a blub programmer is a different story. :)

<comment><USER8> If someone is going to work for you for years then it's still silly to hire based on knowledge of a particular programming language. In your example I would focus my recruiting efforts on more fundamental skills and experience such as accounting, maintenance, troubleshooting, configuration management, and OO analysis. If I found a candidate with those abilities but no Java experience I would be happy to train her on Java (or whatever).

</comment></comment></comment><comment><USER10> So should the Python Paradox be renamed?

</comment><comment><USER11> That, I am sorry, is an inefficient filter. I used at one point believe anyone who didn't know C++ wasn't a good programmer until I met a few people who wrote applications in languages like VB and they were as good as C++ developer would have done.

There are other ways to filter out résumés. Within 10 minutes into a phone interview you can eliminate quite a lot of applicants and I for now just stop the interview at that point. Once someone makes it through the phone interview you are pretty much left with a good bunch of résumé to pick from for the next round.

<comment><USER12> The purpose of a hiring filter is to reduce the false positives. Your discovery of false negatives doesn't say much about the filter quality in this respect.

If you could take random samples from the group of people who would apply to Haskell jobs and from people who would apply to Java jobs and come up with a measure of motivation/willingness-to-learn, I believe there would be some statistically significant things to say. Samples from two mainstream (and in my opinion, trashy) languages like C++ and VB might be harder to differentiate.

As a side note, I've noticed that companies that can afford a large amount of false negatives tend to have horrible interviewing practices. Google is in the top two of the worst interviewing experiences I've ever had. When everybody salivates over your company, you can afford use a quick and dirty filter that hones in on any one arbitrary characteristic. As a matter of fact, one could possibly argue that these lazy filters do better than more accurate filters in the same way that Google argues that more data is better than superior AI. It's stupid for people to look to companies like these for exemplary models of interviewing.

<comment><USER13> The problem with Google is their filter also removes the most of the really high end people. I expect there are far fewer people at standard keeping a 4.0 and doing interesting work in their own time than there are people keeping a 3.5 at the same school and building cool things. Add in a insanely long interview process and poor salary's and many people they accept already have other jobs that they like.

You can also see this in what they develop. They are good at incrementally improving something like web mail, or online maps, but you don't see them pushing into new areas.

<comment><USER14> Google can afford a lot of false negatives, but it can't afford false positives. And from what I've seen, the interview process does a fairly good job of screening them out. Maybe it's just my team, but I don't see a whole lot of deadwood around.

FWIW, they hired me and I have nowhere near a 4.0 (it actually was a 3.0 + interesting projects).

And _most_ successful products are just incremental improvements on what's out there. You really don't want to be a true innovator: who uses an Altair, or WWW (the browser, not the web), or AltaVista, or CP/M, or Visicalc, or Betamax, or a Xerox Alto, or Xanadu? But if you put enough innovations together, you get something really kickass like GMail. Going after established markets is just prudent business sense, it doesn't mean they aren't innovating.

(And there are some pretty crazy off-the-wall experiments that go on inside Google to, it's just that nobody can talk to you about the ones that haven't launched, and it's a good bet that 99.99% of the crazy stuff never will launch because it's basically useless.)

</comment></comment></comment></comment><comment><USER15> Python Paradox. You whippersnappers need to read Paul Graham's best stuff!</comment>


Getting started with OpenTok's Mantis infrastructure - <AUTHOR> http://www.tokbox.com/blog/getting-started-with-mantis/

<comment><USER2> I'm really happy that there are APIs like OpenTok out there. If you've ever tried implementing WebRTC video streaming yourself, getting live video set up is quite complicated and even when you do, many users will not be able to use it because of P2P Symmetric NAT problems.</comment>


Idea: Chat Roulette variant for two-player flash games. - <AUTHOR> http://www.google.com/buzz/amichail/jJnuMxt4C6L/Random-opponent-random-game-Imagine-a-service

<comment><USER2> Even better, use facial and voice-recognition so it was like a web chat with a game board superimposed over both of you. You compete against each other using a combination of voice/mouse movement/and hand gestures. For instance, one round would be a 3D Tennis match where you had to put your hand up and literally swat the ball as it came at you on screen. Same kind of concept as that interactive windmill thing there you hold up a barcode and a 3D windmill pops up on screen. It would be like a visual, physical, and aural overload akin to that "4 second frenzy" flash game. Easy publicity. Then every 5th game they play against the "Coca-Cola Bears" or "Bud Light Frogs."

</comment><comment><USER3> Pretty much every multiplayer casual gaming site in existence already works that way. If the flash games made sensible use of the webcam then yes, that would be a new facet.

</comment><comment><USER4> This already existed in desktop form. Microsoft included network versions of checkers, backgammon and others which would go out and find a random opponent.

</comment><comment><USER5> Sounds like something heyzap could easily implement.</comment>


Top 50 Women in Internet Security - <AUTHOR> https://www.incapsula.com/blog/top-50-women-in-internet-security.html <comment> emily-c Always happy to see Joanna Rutkowska mentioned. She has been a huge inspiration for me.</comment>


Ask HN: How start doing technical hires? - <AUTHOR>

I am a first time entrepreneur looking to start hiring developers after doing all the initial development myself.
While I've lead tech teams and have conduct interviews as part of an established company, doing it as a one person shop is much harder.
The first problem is getting applicants. Are paid job boards worth it?
After getting applicatns, how do you manage them? Do you use something like Resumator? <comment><USER2> There are plenty of qualified people here looking for work, whether it be temporary or long-term. I myself am looking for work for instance.

Before looking into paid job boards, post in the "Who's Hiring" threads that go up each month or contact posters in the "Looking for Work" threads.

How many people are you looking to hire at once, just one or an entire team?

I also agree with phyllotaxis, you need to decide and advertise what type of developers you're looking for. Do you want a co-founder to take over the technical side for you, or do you just want code monkeys that can fix bugs, or somewhere in between?

</comment><comment><USER3> The question that pops out to me after reading your request is _what is the role of these people_? Are you just looking for contract code, or co-founders? These are two fundamentally different people/groups, requiring two different aproaches during the search for them.</comment>


Use mypy syntax for function annotations in Python - <AUTHOR> https://mail.python.org/pipermail/python-ideas/2014-August/028618.html

<comment><USER2> Note that this proposal is being put forward by Guido van Rossum, the creator of Python.

There's been some discussion at Reddit as well [http://www.reddit.com/r/programming/comments/2disob/proposal...](http://www.reddit.com/r/programming/comments/2disob/proposal_for_python_type_annotations_from_guido/)</comment>


UN: Rapid and unprecedented action required to stay within 1.5ºC - <AUTHOR> https://www.unenvironment.org/news-and-stories/press-release/rapid-and-unprecedented-action-required-stay-within-15oc-says-uns <comment><USER2> So given that there's a snowball's chance in hell that world governments will act on this, what are the likely scenarios we will see regarding resource scarcity and social breakdown. What can we as individuals do to protect ourselves, at various time scales of 10, 15, 20 years, etc.?

<comment><USER3> Expect homeowner's insurance in coastal areas to rise, real estate prices to fall, and sales of AC to increase.</comment></comment>


CDN over MongoDb GridFs with on the fly crop and resize for images - <AUTHOR> https://github.com/olebedev/cdn

<comment><AUTHOR> Features: on the fly crop and resize for image/png and image/jpeg mimetypes cache strategy, based on HTTP Last-Modified header additional metadata for each file & aggregated statistic for it forced HTTP Content-Disposition header with the file name, for download links(only if flag is specified, see below) buckets(MongoDB collections) as separation level file listings for buckets, queried by metadata or without</comment>


GMP 6.0 release notes - <AUTHOR> https://gmplib.org/gmp6.0.html

<comment><AUTHOR> The "side-channel silent" improvements should help improve the security of RSA. Here is a paper about it: [https://gmplib.org/~tege/modexp- silent.pdf](https://gmplib.org/~tege/modexp-silent.pdf)</comment>


Budweiser's ex-marketing chief: Weed is the new craft beer - <AUTHOR> http://www.syracuse.com/business-news/index.ssf/2017/11/budweiser_weed_craft_beer_greenrush.html <comment><USER2> Just as beer went through it's 'extremes' phase, weed is going through this right now too. Beer was super hoppy, then super stouty, then had loads of coffee, then loads of NO2, then sours, then glassware.

Finally, beer settled on the 'all-day-IPA': a beer that tastes good, and you can bring to your niece's birthday party but not get too tanked to be able to drive her to the hospital after the bounce-house gets out of hand.

Weed needs that for a recreational substance that 'relaxes' but still allows for emergencies to occur. Think a bag of something (bitter orange chips?) that kids won't eat outright, that comes in low/variable dosages just enough to chill with, that will allow you to drive your kids to the hospital should the need arise. It, frankly, needs to be an 'adult' thing, not juvenile and bacchanalian as it is perceived to be today.

<comment><USER3> IPA is just another fad.* It was designed to be shipped to India on sailing ships without refrigeration and have a high alcohol content.

It's different than the mass market piss Americans are used to, but there are much better options for the average pallet.

*It's not going away, but it's current popularity is outside of historic norms.

<comment><USER2> Maybe. Beer-dom is moving about still, try getting a ticket the GABF next year. You'll find some pretty crazy stuff. Also, I think the IPA craze is already over, it peaked in 2014 or so. Now it's all sours and martzens. Nearly every brewer I see is doing something with a German brewery or ageing in some whiskey barrel or another.

<comment><USER4> Try going south of Colfax once in a while.

<comment><USER2> ?

</comment></comment></comment></comment></comment><comment><USER5> Duh. And on that note, if there are any marijuana entrepreneurs reading this, I'd like to share a product idea with you.

"Session pot" \- tastes amazing like this 30% stuff that the kids are breeding these days but with only 3-5% THC so it won't kill me like this 30% stuff that the kids are breeding these days. You're welcome.

edit: the "high CBD" idea is one that I'll look into and thanks all, but for those of us who live outside one of the legal states our options and information about those options are rather more limited.

<comment><USER6> How is that different than a high CBD strain?

<comment><USER5> I was never serious about it enough to know what you're talking about. I just used to _really_ enjoy smoking, but am too busy these days to partake, largely because of how strong everything is now.

<comment><USER7> Look for a CBD strain it's what you're looking for :)

Most people don't like it because it doesn't get them "high" but it gets you feeling good.

</comment></comment></comment></comment><comment><USER8> Great so now instead of alcoholism being the number one reason for an emotionally numbed population now we have weed that makes people emotionally numb. I know I'll get downvoted but I don't think people realize how people are emotionally detached when they are high all the time just like if your friends with an alcoholic. There still your friend but you certainly waren't as close as before.

<comment><USER9> I'd recommend this Freakonomics episode that analyzes the impacts of alcohol and pot usage. [1]

I'm not arguing in favor of a "numbed population", but all things being equal, I'd honestly rather our numbed population be high instead of drunk.

[1] [http://freakonomics.com/2014/04/17/whats-more-dangerous- mari...](http://freakonomics.com/2014/04/17/whats-more-dangerous-marijuana-or- alcohol-full-transcript/)

<comment><USER10> A lot of people say that in the abstract, but I vividly recall a bunch of specific examples from my junior high school days in northern California.

It was always a relief when certain older troublemakers that were regulars on the scene showed up at a party high on weed, rather than Coors, because they would tend to sit around and laugh, or at least goof around harmlessly, rather than starting fights and driving their large trucks recklessly and endangering nearby people and property.

It's very hard to quantify, but alcohol definitely "brings out the asshole" in people way more than weed does.

<comment><USER11> Well yes, alcohol lowers inhibitions. Hence it's common nickname, "liquid courage".

</comment></comment></comment></comment><comment><USER12> > "Persistent cannabis users show neuropsychological decline from childhood to > midlife"

[http://m.pnas.org/content/109/40/E2657.full](http://m.pnas.org/content/109/40/E2657.full)

(it's 2012 but a good study)

Knowledge workers (in the future, everyone?) should be more skeptical of pot.

<comment><USER13> Ideally no one should smoke until they are 24-26 years old as their executive functions are still developing.

You shouldn't be drinking either until 26 for the same reason.

I've not seen any study showing damage from people that waited until 26 to consume cannabis.

</comment></comment><comment><USER14> relatedly, my money is on "terpene" to be a trending food word of 2018.

<comment><USER15> This, so very much.

I've been excited watching the extracts in WA evolve over time -- initially cartridges were just BHO or CO2 oil, then processors started pumping out THC distillates, followed by CBD distillates. Now they're recombining those distillates and adding terpenes back in from various fruits, resulting in a reproducible, adjustable product.

<comment><USER16> Wow. What keywords do you suggest I use to search for more info about this particular topic?

<comment><USER15> "cannabis distillate fruit terpenes" without the quotes will get you going. Sadly most of the commercial producers are incredibly tight lipped about their processes, but there are some sites like [https://skunkpharmresearch.com/](https://skunkpharmresearch.com/) that share information pretty freely.

<comment><USER17> I wouldn't touch anything that at least doesn't publish a terpene profile.

</comment></comment></comment></comment></comment><comment><USER18> How about a new craft weed beer? Seriously, hops and cannabis are in the same plant family. I think it would be a great combo if you had a beer made from cannabis with the effects from both.

<comment><USER19> The active ingredients are not water soluble so you'd need to introduce lipids or something, which sounds pretty gross.

<comment><USER20> Substances that are fat-soluble are alcohol-soluble, in particular cannabinoids, see: green dragon

</comment></comment></comment><comment><USER21> I was surprised to see billboards advertising marijuana in my area (northern California). I know that tobacco advertising on billboards is illegal, and marijuana ought to be held to the same standard.

<comment><USER22> Isn't it only illegal because of the consent decree from the big lawsuits?

<comment><USER23> Tobacco advertising? No it's straight up illegal. Weed advertising should be too since it's effects on developing minds is even more pronounced.

<comment><USER24> > since it's effects on developing minds is even more pronounced.

I've never heard that before.

<comment><USER23> [http://www.apa.org/monitor/2015/11/marijuana- brain.aspx](http://www.apa.org/monitor/2015/11/marijuana-brain.aspx)

</comment></comment></comment></comment></comment><comment><USER25> It's only a matter of time until big tobacco, big alcohol, and big pharma descend on the cannabis industry.

<comment><USER26> As a crop cannabis is highly amenable to small scale production, in the same vein as craft breweries.

The realities of logistics and distribution, however, favor connected players with robust systems either consolidating or partnering with smaller producers. Again, much like craft breweries.

I think there is ample room for organic, whole bud, "farmers market" type solutions alongside next-gen concentrates and extracts using high tech delivery systems and convenient options available at the gas station from larger established players.

</comment></comment><comment><USER27> He is only thinking about the market here. And if he is looking to make cash then that is always the right way to go. If the wave is getting bigger, the earlier you catch it the better.

</comment><comment><USER28> Because the US is clearly the only country on the planet.

/snark

</comment><comment><USER29> Well OK, but first maybe they might want to stop using name that's not theirs.

</comment><comment><USER30> What was the article about?

</comment><comment><USER31> Meh, in 2017 it's not cool to smoke. Smoking weed doesn't change that.

<comment><USER32> Yup. I dearly hope they come up with a healthy way of administration. Smoking is really really really bad. Source: I am an ex addict. Both Cannabis and Cigarettes.

<comment><USER33> somehowbI'd think it's the addiction that's the problem, like smoking wouldn't be nearly as bad as if people weren't abusing, or being abused by the industry, but definitely not by the smoke.

</comment></comment></comment><comment><USER34> I disagree. Pot will never be the new craft beer; however, edibles do have potential. The problem with universal pot is that it travels through air, and the smells from some of these strains is unbearable if you are not a pot user. Another problem is contact highs, if your a non smoker you can literally catch a contact high from being in the presence of someone smoking a strong strain. Beer on the other hand is odorless and your usage doesn't directly affect others.

<comment><USER35> > if your a non smoker you can literally catch a contact high from being in > the presence of someone smoking a strong strain.

I have never felt high at all from people smoking strong strains near me. I am a fairly big guy with a high tolerance though (i haven't smoked though).

> Beer on the other hand is odorless and your usage doesn't directly affect > others.

This is not true at all. If I haven't been drinking or been around people drinking for a month or two, I can smell if you've had a beer just by walking in the room.

Weed definitely has a stronger smell though. But if you are used to the smell of weed and not the smell of beer, beer has a stronger smell.

<comment><USER23> > I have never felt high at all from people smoking strong strains near me. I > am a fairly big guy with a high tolerance though (i haven't smoked though).

It's you. I'm an average sized guy with low tolerance and contact high is a real thing. I wonder what effect it would have on kids nearby...

<comment><USER36> This is a myth. This might be a possibility in a tightly enclosed space with poor ventilation, but under realistic circumstances a "contact high" is pretty close to impossible.

<comment><USER23> Says you. I've experienced it, outdoors in close proximity. People's biology are different. Some people are hyper sensitive, others require massive doses to experience a high. This is true of basically all drugs, btw.

<comment><USER36> I wasn't there and I'm not you, so I can't comment on your personal experiences, however, studies have shown that what you're describing is very unlikely, particularly outdoors. A psychological explanation is much more likely.

<comment><USER37> The math involved would say its impossible, the placebo effect is a very real thing though.

<comment><USER23> There is no generalizable "math" involved. Everyone's physiology is different and their susceptibility to THC depends on the specifics of their exact metabolic conditions in their own body. Some people get high on a few mg. Some people require 10's of mg. Someone in close proximity to a smoker or smoking crowd could easily get a mg or two if the others are smoking heavy THC strains. The math checks out on that...</comment></comment></comment></comment></comment></comment></comment></comment>


Body hacking trick: cooling the hands for better performance - <AUTHOR> http://www.stanfordalumni.org/news/magazine/2005/julaug/features/cool.html <comment><USER2> Taking this very very low tech... I ran a 5 day running race in 40-50C heat this summer. By grabbing ice cubes at the control points during each stage and holding them in my hands - as opposed to putting them under my cap like most runners - I was able to drop my heart rate by 3-6 beats per minute until the ice melted.

The Swedish company Craft made an "ice glove" for triathlete Torbjørn Sindballe who had trouble from the heat when running in Hawaii...

</comment><comment><USER3> This isn't very encouraging.... <http://www.ncbi.nlm.nih.gov/pubmed?term=CoreControl>

<comment><USER3> Can't edit anymore: Since finding this I've found one more study that doesn't support the CoreControl, and I've found three that do support the CoreControl, as well as 3 redditors that have said the support it.

Another thing to note is that the sample group in most of these studies is far too small (9 people, come on!)

</comment></comment><comment><USER4> Interesting. I'll have to try this some time.

For people not willing to buy such a contraption (like me), though the vacuum helps, try running cold water over the bottom of your wrists. It's a fantastically-effective way to cool off, and very not-messy.

<comment><USER5> A good hat and a wet handkerchief tied around each wrist is how I was taught to make it through the 105°F days back on the farm as a boy.

</comment></comment><comment><USER6> Anyone else want to yell "double blind!" at the bit about the track coach?

</comment><comment><USER7> I am more interested in the opposite of this: a portable, ruggedized hand- warming device for divers suffering from hypothermia in the water.

<comment><USER8> A Noah Shachtman piece in Wired about tech for soldiers spends some time on this same device from Stanford and it describes how the device (in an earlier form) could also be used for warming:

<http://www.wired.com/wired/archive/15.03/bemore_pr.html>

Towards the end of the piece, the author describes being being in a bathtub with cold water and, after it starts to affect him, the device is used to warm him:

"But his stories get harder and harder to follow. I've started shivering again --all across my legs and chest, muscles pulse to a manic rhythm. And then I start having tremors. My thighs jackknife to my chest, unbidden. I moan, and darkness closes in from the edges of my vision.

Then, just like on the treadmill, Grahn takes my wrist. He slips each of my hands into a modified Glove prototype. This time, the metal hemispheres inside are hot to the touch--113 degrees. After two minutes, I can think again. The tent comes back into focus. You can stay this way indefinitely now. "You're at a thermal equilibrium; the heat going into these two hands is equivalent to what's going out of the rest of you," Grahn says. "Now you're uncomfortable again -- merely uncomfortable. That's a huge difference when you're talking about survival." The water is still bitter, of course. But now I can take it.

</comment></comment><comment><USER9> Interesting. The article appears to be from 2005. I wonder what has happened the last six years.

<comment><USER6> They were going to try and bring the thing to the mass market, but they got cold feet.

</comment></comment><comment><USER10> > "The drugs that render patients unconscious also make them hypothermic. > That's useful because chilled patients bleed less during surgery ..."

Coagulation is an enzymatic reaction. You might not be surprised, then, to learn that low temperatures _retard_ , not enhance, coagulation. Cold temperatures make the patient bleed more, not less. The article gets this part exactly wrong.

<comment><USER11> Is it possible that this is counterbalanced by the circulatory system's reaction to cold? For instance, perhaps surgery on the limbs is easier when the body is reducing peripheral circulation as it does in someone experiencing hypothermia.

<comment><USER10> Empirically, my understanding is that no, the harm of cold temperatures (decreased coagulation) is not counterbalanced by the gain (decreased peripheral circulation). Patients undergoing surgery are coagulopathic, moreso when they are cooled, and in fact they are often actively warmed now.

</comment></comment></comment><comment><USER12> I think this might be bullshit. [Edit: maybe not. See thread below.] The article is from 2005, and I can't find anything that is less than 3 years old that describe the device working.

I was working as an engineer near Stanford when this cooling glove was announced, and I remember hearing about the "$400,000 version by a name-brand design firm that really never worked." It's possible that the professors just gave up or moved on to something new after discovering that productization was hard. It might also be that the rate at which you can cool a human body through the small surface area of the hands without damaging the skin is too small to be useful.

Anyone find any good evidence that this could work?

<comment><USER3> There is a study as recent as last year [http://www.avacore.com/sites/default/files/document/Kwon- Sch...](http://www.avacore.com/sites/default/files/document/Kwon-Schneider- palm-cooling-Bench-press-study-MSSE-2010.pdf). There are also a lot of sports teams using it, and it is visible often on TV.

<comment><USER12> That does appear to be a scientific paper from 2010 with real statistics in it-- maybe it does work.

</comment></comment></comment><comment><USER13> Each time I see stories about this device I end up wanting to have access to one at my local climbing gym REALLY BADLY. I hope they manage to bring the price down enough that I might actually be able to pitch it to the gym.

<comment><USER14> And if you could combine this with a machine to remove lactic acid from your forearms and make it small enough to fit into a chalkbag so that every time you dipped, you got chalked up, cooled down, and stronger. Yeah, I think that might work.

</comment></comment><comment><USER15> Every time this comes up, it makes me want to do try making a DIY version...

<comment><USER16> Why not? Doesn't seem to complicated - you'll just have to find the best temperature for you and a way to keep it stable - a thermostat and/or variable amount of insulation should do the trick...

<comment><USER15> They even state the temperature, between 18 C and 22 C. I'm thinking if you could find a plastic top for a gumball machine (or something like it) you would have a pretty good start. The vacuum could be done manually with a pump of some sort.

For the cooling part, you'd need to drill two large holes for a pipe to go through, which the hand would hold onto. Then maybe just have a water and ice reservoir that sits on top of the whole thing? That way, you wouldn't need any electric pumps or anything.

Then, the only thing left is sealing the wrist joint. One of those big rubber exercise bands might be enough to seal it off.

<comment><USER17> Start with a foot-bath. Probably just as effective if you are not commercializing it, and it would leave your hands free.

<comment><USER3> How important do you think the vacuum really is? Wouldn't it make sense for a DIY unit to just cool water to 10C and then to submerge your hands or feat in that? That would be a much more efficient method of heat transfer.

<comment><USER15> The vacuum is the key to the whole thing. The blood vessels in your extremities are very good at contracting when they get cold, to help preserve your core temperature. The vacuum draws them back to the surface, meaning you can cool much more blood more quickly.

<comment><USER18> I made a half-arsed attempt at replicating this a while back. The stuff I noted for my next attempt:

As your vacuum increases, the hand/wrist will be pulled further into the chamber. You have to have something to hold inside the chamber that is anchored to the chamber, or a container where having the fist jammed up against the back wall is reasonably comfortable. (My original attempt: using juice concentrate cans rather than flowing water through a handle. I wanted to avoid flowing water if at all possible.)

Due to the whole "arm getting pulled inside" thing, the wrist seal is more troublesome than I hoped. My next try is going to use a dry diving suit wrist- seal.

You want as small an interior volume as possible if using a manual air pump. It's much more time consuming than you'd think to hand-pump the air out and achieve the desired vacuum. I wouldn't want to risk using an automatic air pump in this case, myself, so I'm sticking with the hand pump while reducing the interior space of the container.

Let me know if you have success with this; or, heck, even if you don't, because you'll probably have some good advice as a result.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> "When a hot body core issues a command to open the radiators and dump heat, the palm can override that command and order the radiators to shut down based on local conditions, i.e., if the palm touches a cold surface" - Damn, I was thinking that you could cool down by touching anything cold, apparently that won't work because the radiator shuts down if the outside conditions are too cold (so touching ice won't work)... Pretty interesting research, though - implementing something like this in some sort of "power suit" would be great.

</comment><comment><USER19> I'm a person who almost constantly feels hot. I think unconsciously I realized that if I roll the sleeves up on my long sleeve oxfords (when I have to wear them) I feel _much_ more comfortable, but could never figure out why it made such a difference. I suppose it just helped expose more area near my hands and cool me off.

I'd love to have one of these.

<comment><USER20> Do you generally have normal blood pressure readings?

I continue to have blood pressure issues, but in the early days when it was less controlled one of my symptoms was that I was extremely warm blooded.

Now the my BP has been lowered somewhat, I find that I generally feel cooler and am more sensitive to cold environments.

<comment><USER19> No, normal BP. However, as I've gotten older it isn't as bad (and I've started to become more sensitive to cold), but I still find myself hot and sweaty when everybody around me is often fine or cold.

When I was young, it wasn't even a big deal to go out for a while in the middle of winter in a t-shirt, I didn't even own a proper winter coat until I was far into my 20s.

<comment><USER21> Out of curiousity, where did you grow up? It makes a big difference for the temperature in the winters!

<comment><USER19> Good point, middle of the U.S. East Coast, winters get pretty cold, snow, that sort of thing.

</comment></comment></comment></comment></comment><comment><USER22> This is way over-engineered. Just put your hands in cold water..

Also, this fact about cooling the body for better performance is well known in professional sports. An example product that is being used there: <http://www.icydip.com>

<comment><USER18> The problem with that is that the blood vessels clamp down in response to cold. The vacuum prevents that, and seriously improves the efficiency of the cooling process.

</comment></comment><comment><USER17> I noticed the article talked about dogs cooling through their feet. I used to work in a hot office, and the best solution to cooling down was to take my shoes off and have a fan under the desk.

Luckily, I shower every day, and my feet don't generally sweat or smell too badly.

</comment><comment><USER23> These are used on all NFL sidelines if you keep a look out for them.

</comment><comment><USER24> Strange -- because after I play video games for a while, I have to warm my hands to regain my reflexes -- which aren't very good anyway.

</comment><comment><USER25> Why does it need a vacuum?

<comment><USER26> _when externally applied heat shocked open the radiators in the cold palms of anesthesia patients, warmed blood was returned straight to the heart, and the body was reheated from the inside out. Applying a mild vacuum to the hand intensified this effect._

It doesn't _need_ a vacuum, but it does help. They don't seem to mention why.

<comment><USER27> Applying a vacuum to an area causes blood to well in that area, suck on your hand and you'll see the area you suck on blush. So presumably you're making capillaries open up and increase heat transference over the skin threshold. Opening all the capillaries in an area will increase the volume of blood in that area too, so greater volume and greater heat gradient (over a small distance).

 _Disclaimer: Assumptions, not medically/biologically trained._</comment></comment></comment>


SwiftUI vs. UIKit – Comparison of building the same app in each framework - <AUTHOR> https://www.youtube.com/watch?v=qk2y-TiLDZo <comment><USER2> Honestly guys, don't even waste your time on SwiftUI prior to version 2.0. It's the most raw and crapiest framework apple has ever released. It only looks good on paper, and drastically misses basic functionality. SwiftUI 2 looks a bit more mature though

<comment><USER3> i've had this impression after playing with it for a few hours, but you seem to have more experience than that. Care to share your experience ?

<comment><USER2> Use switch statements inside SwiftUI? Can't do that (or you'll have to wrap every view into AnyView)

Use `if case let` to conditionally unwrap and show a view? Nope.

Make a customizable tableview? Nope. `List` is all you get. And you can't even remove the separator.

Get the scroll position for the ScrollView or List? Definitely not possible.

Even SwiftUI's TabView is buggy as hell. It resets the view's state as soon as you switch the tab. Everytime I encounter a bug or an issue in SwiftUI I see a post on Stackoverflow where people say it's not currently possible to do that or it will be in SwiftUI 2.0. I heavily use SwiftUI in my current project, buy 90% of the views are actually wrappers around UIKit, even all of the UITextFields are wrapped because SwiftUI cannot provide basic access to the underlying responders.

So my opinion is to at least wait for 2.0

<comment><USER3> Thanks. I recently took the decision to wait for another year before using in for a production app. Seems like i had a good intuition.

</comment></comment></comment></comment><comment><USER3> this video doesn't make any sense. It compares the amount of time it takes to type code for a trivial layout. This doesn't make sense for two reasons :

\- uikit was shipped with interface builder from day 1. which lets you design trivial interfaces in a wysiwyg way, whithout typing _any_ code at all.

\- typing code is never what really takes time. Complex interactions and non- standard UI design is where you spend most of your time.</comment>