Netflix Loses Its Cloud Guru to a VC Firm - <AUTHOR> http://www.businessweek.com/articles/2014-01-07/netflix-loses-its-cloud-guru-to-a-vc-firm

<comment><USER2> I wish we could observe a parallel universe where Netflix went a different route and stayed with dedicated or went with colocation. I'd love to compare the outcome with their decision to go with AWS (minus CDN).

<comment><USER3> They came from a datacenter world before they moved to AWS. The problem was that they had a traditional enterprise IT organization with big process and relying on Oracle, SANs, and all the same old enterprise IT solutions. It was built to run a company that was focused on operating warehouses and logistics, and not an agile web company.

Moving to the cloud was as much an organizational transformation as it was a technical one. And the move to AWS has paid them dividends in organizational and technical agility, as well as execution speed. I will never believe that it saved them money when compared to a well run physical infrastructure that was more purpose built for what they do, but they did not demonstrate the ability to run a physical infrastructure well so it's kind of moot.

It worked out great for them and gave Adrian some great stories to share. Congrats to him on the move to Battery, that's a fantastic team.

</comment></comment><comment><USER4> Here is his own blog, maybe more interesting to read: [http://perfcap.blogspot.com/](http://perfcap.blogspot.com/)

</comment><comment><USER5> Does Netflix get special pricing for AWS? With their scale, they could probably negotiate with Amazon for lower rates.

<comment><USER6> Certainly, see for example [https://aws.amazon.com/ec2/reserved- instances/](https://aws.amazon.com/ec2/reserved-instances/), search for "Scale with your Business". Similar discounts exist for most of their other services.

<comment><USER7> I remember reading something about how AWS is pretty much running very close to at cost (super razor-thin margins, just like the Amazon shops themselves),but seeing these numbers seems to imply otherwise (20% is a big chunk of change).

<comment><USER8> "AWS is pretty much running very close to at cost (super razor-thin margins"

Compare the Amazon price with other VPSs.

It's a different service, yes, but it's not even close, not even if you reserve the instances (it's been a while since I did the math though)

But for small scale, I recommend strongly _against_ AWS

<comment><USER9> Isn't the opposite true? It's fine for under 10 instances when you're first starting up and still flexible, but over that you're better off going colo?

<comment><USER10> I've described AWS as a great "deal" for very small and for very large customers. For people in the middle, not so much.

<comment><USER11> Also depends on what you consider a deal -- the lower tier hardware works for a Wordpress blog, but not necessarily for much more. For the price, a good Linode or even a dedicated server will get you more bang for the buck.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Foolish me. I thought this tweet ([https://twitter.com/HackerNewsOnion/status/42071605314074214...](https://twitter.com/HackerNewsOnion/status/420716053140742144)) was a joke.</comment>


Why Buying Provisioned IOPS on RDS Might Be a Mistake - <AUTHOR> http://blog.textit.in/why-buying-provisioned-iops-on-rds-may-be-a-mistake

<comment> stephen-mw general purpose SSD offers a good bang for your buck. The "best/most consistent" disk performance on amazon is still (unfortunately) ephemeral disks in a raid set. But if you turn that instance off (or Amazon decides to turn it off for you...) bye-bye to your local data. Not an acceptable risk for a database.

And still, after all these years, AWS won't replace a failed ephemeral disk in your instance. Is there a technical reason for this??

If one of the large cloud providers wants to become competitive in this space, all they need to do is offer instances with local storage that are in a hardware raid set with truly large volumes. Heavy disk-io applications are still much better suited on-prem where you have the flexibility to build these types of monsters. 5TB spinning disks are going for under $200 these days.

Or AWS could just start replacing disks on their m1 series machines...</comment>


Buying into the Emacs Platform (2018) - <AUTHOR> https://two-wrongs.com/why-you-should-buy-into-the-emacs-platform <comment><USER2> I love Emacs. For all of its warts, "historical reasons", and vestigal features, it is the editor that really opened my eyes to alternative ways to do introspection and programming, in general.

I want to believe the friction comes if you try to "fix" Emacs too early.

You kinda have to conform to the Emacs way when learning it and leave all of your assumptions at the door. I see a lot of people who come to Emacs from Vim expecting Evil Mode to be the panacea for Emacs. It's not. At the end of the day, it's still Emacs and people run into friction because they expect it to be Vim-ish all over or they want to force Emacs to be Vim.

Personally, I came from Vim to Emacs via Spacemacs. I was a bit of a zealot about Vim until I tried Emacs. I left all of my expectations behind and I was pleasantly surprised by many things inside. Were there things I disliked? Of course. But, I wasn't looking for an excuse to hate it.

<comment><USER3> I had a similar path to Emacs: became really proficient with Vim, avoided Emacs since everyone I knew hated it, saw someone doing things with incredible speed and efficiency in Emacs at Enova (hi Kyle) that I had never imagined could be done, tried Emacs myself, and spent weeks customizing it to become extremely fast with rapid development in Clojure using CIDER.

But now that I do vanilla front-end dev, I have found VS Code to give me nearly all the same productivity I had before, but with practically no configuration, and in an editor that actually has _reasonable_ per-pixel scrolling. (Emacs added per-pixel scrolling in 2017 _but still got it wrong somehow._ )

<comment><USER4> What is the utility of per-pixel scrolling in a text editor?

<comment><USER3> In some mysterious psychological way that I don't fully understand, per-pixel scrolling helps me to mentally keep my place significantly faster and easier than per-line scrolling.

</comment></comment></comment></comment><comment><USER5> Being a vim guy myself, I only use Emacs (Spacemacs, to be precise, so as to get rid of all those a-x a-y a-z a-m-s-x type shortcuts and replace them with something ergonomic) as a git client - because Magit is the best git client out there.

I've tried using Spacemacs as a main editor for a while, but it's too much of a mess, and if anything goes wrong (and it often does) you're stuck with obscure lisp tracebacks, thanks but no thanks, I'll use vim or kak as the actual text editor. I also noticed I spent an enormous amount of time constantly tweaking my spacemacs config as opposed to doing actual work.

<comment><USER6> _if anything goes wrong (and it often does) you're stuck with obscure lisp tracebacks_

Is Spacemacs really that broken? I use the same GNU Emacs configuration across Windows, FreeBSD, Ubuntu, CentOS, and macOS, along with packages like tramp, magit, slime, and python-mode, and the worst thing that's happened in recent memory is that either jinja2-mode or salt-mode (I forget which) doesn't indent things the way I like.

<comment><USER7> Spacemacs is that broken. The problem is that Spacemacs tries to impose its own shortcuts onto other emacs packages that may or may not know about spacemacs. For modes that perform extensive customization of their own, spacemacs alterations to emacs can result in some very weird behavior. For example, markdown-mode's highlighting, will, for mysterious reasons break when used with spacemacs [1].

The other problem with spacemacs is that if you're trying to use another emacs package, now you have to look up two sets of documentation. You have to look up the package's documentation to find the command that you want to execute, and then you have to look up the documentation for the relevant spacemacs layer to figure out what spacemacs has remapped the command to.

I tried to use spacemacs as a transition path from vim to emacs, but I found that I had much more success by just "ripping off the bandaid", remapping caps-lock to ctrl and spending a weekend forcing myself to relearn how to perform my most commonly used vim commands in emacs.

[1]: [https://github.com/syl20bnr/spacemacs/issues/11790](https://github.com/syl20bnr/spacemacs/issues/11790)

</comment></comment></comment><comment><USER8> No thanks.

I've had several bouts of trying to learn emacs throughout my life.

It isn't necessary to list all the benefits, sure, there's a lot. Yes, I get it's "extensible" and you can write little elisp programs to do just what you want.

Here's the obstacle: Motor skills. It just takes way to long to first memorize reams of commands and then to train your fingers to issue those commands effortlessly. In the meantime, searching, "apropos" and googling stuff isn't an attractive thing to do when you have _actual_ work to do.

That's a serious obstacle and no listing of all the awesome-ness of emacs is going to convince many of us to put in that kind of effort.

<comment><USER9> I had a similar experience to yours until I realized that the extensible part also means you don't need to use the builtin commands and shortcuts. I have been using emacs for 10 years (used vim for about 12 before that, using emacs with evil-mode now) and, to this day, I have to google 'how to quit emacs' when I am faced with a vanilla emacs :)

I just feel it's "my" editor more than any other editor I've ever used.

edit: typos

<comment><USER10> > I just feel it's "my" editor more than any other editor I've ever used.

So true! When I first tried to get into Emacs it was as a somewhat seasoned programmer who wanted to play with a Lisp other than Scheme. I've read the built-in tutorial and almost ran away in horror. I get it - for non-programmer users, yes, it makes sense to try to teach them the _usage_ of an editor. I lost quite a lot of time trying to remember exotic chords like C-u C-x ^ a and so on, but it was ultimately meaningless - not one such shortcut remains in my config.

Emacs is an IDE for Emacs Lisp written in Emacs Lisp (and it's incredibly powerful at that, BTW). In other words, it's a bunch of APIs you can call, and it also gives you the place where you can interactively execute any elisp code and see the effects immediately in the same instance of the editor. It's obvious in hindsight, but I believe I'd get into Emacs much faster if I started with Emacs Lisp manual or maybe "Writing GNU Emacs Extensions" book instead of going through the Emacs manual (huuuuuge!) first and trying to bend my habits to fit the vanilla Emacs.

I think most programmers who wish to switch to Emacs should try to do it the other way: start with learning Elisp syntax and Paredit, then learn about modes, hooks, and key-maps and start hacking your own config. Everything else - buffers, windows, fringes, faces, what-have-you - you'll learn as needed when you need to implement a particular command which deals with them. Pull in a healthy amount of plugins then read their source - or just read the source of Emacs, as you can jump to definition of any function in one click, even if it's written in C - and before long you'll have a comfortable environment to work in, with all the features you learned to love from your previous editor. And that's when the fun part start: exploring Emacs features that you've never seen or heard about, wrapping external tools and streamlining their workflows, exploring the huge pile of add-ons.

<comment><USER11> This is excellent advice. I may make another go at it.

Like you, I've tried before. After a day or two of trying to remember alt- command-blah-blah-blah every time I wanted to do something simple, I gave up. Then I started mousing around which totally defeated the purpose of trying to pick it up.

I also found (at least 7-8 years ago) the windows Emacs to be terribly slow. Hopefully that's not still true. That also effectively kills the learning experience after a while.

<comment><USER12> > alt-command-blah-blah-blah

C-h f

And then I type sort of what I want (with helm or ivy, it's a fuzzy match) and select it from the list, which brings up it's documentation and what keystrokes call it.

There is also `where-is` if you remember the name, or `M-x` (or `M-:`) if you don't mind typing it out.

</comment></comment></comment></comment></comment><comment><USER13> Very nice list, thank you for the writeup and for sharing this!

One interesting thing about the Emacs modes listed here is that many one of them are by themselves already enough to justify the use of Emacs for at least someone in specific application domains.

For example, there are statisticians who do not use much of the breadth of Emacs, except for the listed ESS mode, and who do a lot of their work in that mode. The same for magit, Org mode, calc, dired, Tramp and others.

In addition to this richness in features and flexibility, a major attraction of Emacs is that switching between all these aspects is instantaneous.

<comment><USER14> And with org-mode you can start to weave them together using the source blocks! I've been doing a fair bit of numerical code lately, and being able to have a Maxima repl, org, and my C source all in the same place has been amazing.

</comment></comment><comment><USER15> I used Emacs for 15 years. I've been off of Emacs for about 5-6 years now and I won't ever go back.

Here's why:

1\. Refactoring. The refactorings in IntelliJ are amazing. Amazing. The ability to say (yeah, this class is now called Foo instead of Bar) and have everything automatically changed is outstanding. This is a basic example of course but you can also do things like remove a function parameter, and also do things like lookup reverse symbols.

2\. Stable. IntelliJ is just amazingly stable. Part of this is that I had to write elisp to get Emacs to do stuff that IntellJ just already provides for me. Everytime Emacs would upgrade I would have to upgrade Emacs.

3\. Pair programming. I could NEVER work with other engineers on their code and vice versa. We just didn't speak the same language.

Now mind you I also created a lot of the code you use in Emacs. I co-created EDE for example.

<comment><USER16> Java is more like assembly language programming at this point in software history.

You shouldn't be editing Java with any editor, let alone emacs.

This is because if you are using 3 frameworks, and 30 classes with DI and reflection, just to post a json to a http end point, you should be using an IDE to handle that kind of madness.

<comment><USER17> That's more of an architecture problem rather than an intrinsic characteristic of Java though. I'm not a fan of the language, but I think the latest versions added some nifty features that make working with the language not as bad as it used to be.

</comment></comment></comment><comment><USER18> I'm using Emacs for my daily tasks, both writing and programming. One question I have to more experienced Emacs users: Can you recommend an email client? It needs to be able to display html mails. Currently, I use claws-mail and am fairly happy with it, except for the search. I've got about 30,000 mails in the inbox and full-text searching them takes too long.

Is there a way to transition my claws-mail folders to Emacs, or ideally use both programs at the same time for a while?

The article recommends notmuch-emacs. But I'm afraid of 2 things, (i) loosing existing mails in the transition (due to e.g. faulty conversion tools), and (ii) that after a complicated transition I'm not happy with the new setup. Any recommendations? Is it possible to use the claws-mail email inboxes directly in Emacs?

Another thing is org-mode. I never really managed to get deep enough into it to really see the benefits. I've even bought the printed org-mode manual, but the setup seems so complicated. Can someone recommend a good "light" tutorial for it? What are you using it for?

<comment><USER19> > One question I have to more experienced Emacs users: Can you recommend an > email client?

Contrary opinion from an experienced Emacs user (parts of my init.el are older than many users in this forum): I used to be a fan of Gnus, but then noticed that dragging attachments into E-mails is such a productivity booster than I switched to Mail and haven't looked back. If you are on a Mac, the combination of seamless drag&drop everywhere, Mail.app and LaunchBar simply does not compare to what you get inside of Emacs.

I do feel some regret, because I liked the customizability, but facts speak for themselves: I do things much faster with Mail.app.

<comment><USER20> Interesting. One of the reasons I switched to mutt (well, neomutt) is that it is faster for me to work with attachements from a cli. This is mostly due to tab completion, which for commonly accessed locations is practically muscle memory. Takes me forever to to click my way there.

<comment><USER19> I often don't even know what the filenames are for my attachments, or where they are in the filesystem. Some are ephemeral.

I'm guessing you haven't worked with MacOS? Most people coming from a Linux/UNIX backgroupd (I was one of them) tend to assume that MacOS doesn't offer much, especially for advanced users, which isn't true. You can do many things _significantly_ faster on MacOS.

In my case, I drag/drop attachments from other applications, from the filesystem, or from LaunchBar (finding things in LaunchBar is _way_ faster than manually navigating through an entire path using tab completion).

</comment></comment></comment></comment><comment><USER21> The way I see it, there are two major approaches to IDEs - Extendable text editors (of which Emacs is the best example) and Visual Studio knock offs.

There is no right or wrong answer, but I like the Emacs way.

<comment><USER22> I'd put it slightly differently, but I guess it is the same idea.

There are two major approaches to software development: 1) powerful text editors (vi, Emacs) or 2) IDE.

Powerful text editors are universal, but up to now their language support was often subpar compared to IDEs. They tend to do well for niche languages with no dedicated IDE, as then they're the reference editors. But for mainstream languages on can usually find IDEs with better language specific support. Still, they shine in pure editing power and after an initial investment you can use them for anything text based.

Then an IDE can have the best language support for some usually small set of languages, but is not as powerful as a vi or Emacs for pure editing.

That's the situation so far, but I see this changing thanks to the language server protocol [1]. It's the pattern seen in portable compilers, where a universal IR avoid a MxN explosion with M languages front-ends and N target ISA. Except here one avoids the M editors times N languages by having a universal protocol between an editor and a LSP server for a language. What the LSP allows is decoupling your editing front-end from the language support back-end (the LSP server).

All this is a bit young, and moving fast, but in time it offers the possibility of a no-compromise experience: use the best editor for you, and still get the best language support available. It's already possible to extract Eclipse Java support, or Microsoft Python support, and use it with any LSP compliant editor for example, with some ad-hoc work. In time, all this should get more streamlined. Which makes me happy to have invested into Emacs ;)

[1] [https://microsoft.github.io/language-server- protocol/](https://microsoft.github.io/language-server-protocol/)

<comment><USER23> > That's the situation so far, but I see this changing thanks to the language > server protocol

It's really interesting how LSP shifts what I'll call "Visual Studio only features" into all editors, while at the same time you had Microsoft being the ones who initially pushed for LSP-adoption.

I wonder how many internal discussions they had on this subject before saying "Go".

It's a fantastic initiative and I'm glad it's there for me, in my Emacs today.

<comment><USER21> Visual Studio-like IDEs are a dead end. There is little revenue opportunity in them and a huge downside in losing relevance in the overall developer mindshare.

How many of us would be using a Microsoft IDE/text editor if it were not for VS Code?

<comment><USER24> The millions that use and will continue to use Visual Studio?

<comment><USER21> Visual Studio is great for developing on Windows software that'll run on Windows or XBox.

Feels like a dead end to me. The ecosystem has colossal inertia, but it's easy to see the lack of future.

<comment><USER25> So, you propose to give up on Visual Studio because in 20 or so years maybe Windows and XBox won't exist? Or?...

Also, speaking of IDEs. There are also Jetbrains' IDEs and XCode. Can't speak for XCode, but IDEA offers capabilities that Emacs can't even begin to approach.

<comment><USER21> I have already given up Visual Studio because none of my work is intended to run only on Windows and Xbox.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER26> I remember giving Emacs a serious go 5 years ago. I really wanted to like it but the archaic mode switches[1] were just too much when you are used to the convenience of Ctrl+C and Ctrl+V (I'll call these "modern shortcuts").

I've tried using ErgoEmacs[2] but what I've learned was that it doesn't really play nicely with all the other extensions.

It's a shame because I've wanted to find something a bit more powerful than nano for config and code updates on remote machines.

[1] [http://ergoemacs.org/emacs/emacs_kb_shortcuts_pain.html](http://ergoemacs.org/emacs/emacs_kb_shortcuts_pain.html)

[2] [https://ergoemacs.github.io/](https://ergoemacs.github.io/)

<comment><USER27> You can use CUA mode: [https://www.emacswiki.org/emacs/CuaMode](https://www.emacswiki.org/emacs/CuaMode)

I also highly recommend Spacemacs. If VI isn't your thing, it is still great to use it, just set it up in Holy mode using Ivy.

What it adds (on top of a great default config), is bindings which start with M-m (that's Alt+m). For almost everything. Like saving your file is M-m f s (that's Alt+m release, f release, s release).

<comment><USER28> Sure, but with a leader key in vim set to 'f', I can save with f-s (that is, press the f key and then the s key), which after a month is next to automatic

<comment> dan-robertson You're arguing about vim shortcuts in reply to a description of what one can do if one doesn't want vim shortcuts. Note that the equivalent in vim is not really f s, but ESC f s, because in most modes where one might do M-m f s, most characters insert themselves, the equivalent of insert mode in vim.

Note also that in regular emacs one can do C-x C-s (ie holding control press x then s).

</comment></comment></comment></comment><comment><USER29> As a former Vim addict of over 12 years: to those who would like to try to move to Emacs, and Spacemacs doesn't cut it, try Doom!

[https://github.com/hlissner/doom-emacs](https://github.com/hlissner/doom- emacs)

It is a much thinner configuration, and you will learn Emacs instead of layers and Spacemacs conventions.

It only took me about a week of deliberate use to adapt my work flow and get used to it, and it has been my primary editor for nearly a year now.

<comment><USER30> At first glance, I thought this would be an Emacs tutorial superimposed on top of the Doom engine, ala DOOM as a Tool for System Administration.[0]

[0][https://www.cs.unm.edu/~dlchao/flake/doom/](https://www.cs.unm.edu/~dlchao/flake/doom/)

</comment></comment><comment><USER31> "I don't care what editor you use for source code – you can use Quick basic for all I care – but look, you have to know that Magit exists. Even if you don't use Emacs in any other capacity, you may want to use it for Magit."

There are exactly two instances of "Magit" in this web page and I just quoted both of them.

<comment><USER31> A quick web search brings me to Magit's page, which tells me that Magit is "A Git Porcelain inside Emacs" which just creates further questions. How does one make delicate pottery out of a version control system? In what circles is "a porcelain" a synonym for "user interface"?

<comment><USER32> The Git documentation refers to everything Nicely Shaped that is tacked on to the core git functionality as "porcelain" [0]. (Pretty much everything that we normally use when interacting with git counts as porcelain.)

0: [https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and- Po...](https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain)

</comment></comment></comment><comment><USER33> So, emacs is a platform for text-based programs to do things that i already have other stable, reliable, and familiar programs to accomplish. I'm not sold. I need a better value proposition before i feel sold to spend my time climbing that learning curve.

<comment><USER34> >text-based programs

Not text based, it has buttons, widgets, can embed pictures and graphics.

>reliable, and familiar programs to accomplish

In emacs these bits of code are integrated, so I could, for example, save an IRC chat as buffer, edit it, and send a e-mail. Or open an interactive REPL of maxima, for example, copy result to latex having embedded previews for formulas, and then compile it to pdf (and preview in emacs).

Different parts could be combined in any possible way with elisp code. You can easily call any email-related or rfeed-related function from your code at any time.

<comment><USER25> The question is: is it worth it? Trying to figure out all those functions, setting all tose modes, and then programming them the way you described.

Especially when all you just described can be done with regular copy-paste between dedicated programs if needed.

</comment></comment></comment><comment><USER35> I've been a vim guy for 5 years now. And last month I tried to switch to emacs. But it just didn't feel natural for the following reasons:

1\. My usual coding session would involve Vim+Tmux, on trying the same with emacs. I was seeing some lag(although small, but noticeable).

2\. I am very used to the key strokes "g-d, g-D" in vim to quickly move around calls/declarations of functions. For that emacs makes use of Ctags, which is more versatile but not great for a quick lookup.

3\. I have had better luck with Vim's linting plugins like ALE and haven't found similar plugins for Emacs which was eventually a major game changer to switch back to Vim.

On the other set of tools:

\- Org-mode and latex-preview-pane-mode are the 2 set of tools which I have integrated into my workflow and they are very suitable to me.

\- ERC is also pretty neat.

\- I have tried Magit and although seems useful, for my use case of Emacs currently doesn't hold a lot of promise.

\- Switch to Gnus, mu4e as mail clients replacements is too painful, at least to a Thunderbird user.

<comment> dan-robertson Regarding your first point, do you mean that you try running emacs inside a tmux inside a terminal?

If that is the case, I would recommend not doing that. The emacs gui will give you more colours, images, thinner window borders, better keyboard shortcuts (eg a difference between C-m and RET), mouse controls (if you ever want them), as well as potentially less lag.

The analog to the vim-in-tmux workflow is to instead keep emacs always open in the gui, run somewhere between none and all shell commands from emacs (depending on how you feel), and have a terminal in another window (as you might for web browsing or email) for more prolonged terminal things. One might skip this somewhat by running shell (or even term-mode) in emacs.

Similarly, for editing remote files one uses tramp to ssh from inside emacs and edit files whereas with vim one sshes into the remote box and runs vim.

</comment></comment><comment><USER36> I am currently only using Emacs for org mode, and overall it works great for taking notes, keeping track of tasks, and outputting documentation.

However... I would _love_ to see a GUI version of just org mode which would combine a few features of OneNote, well I would be happy if it only made adding pictures better!

</comment><comment><USER37> If only Emacs had become the VM of the web rather than Chrome! I'm more than ready to trade our impending soyberpunk police-state dystopia for a case of carpal tunnel syndrome.

</comment><comment><USER38> I bookmarked this. I have been using Emacs since I bought a manual around 1980, but, the article mentioned a few packages I didn't know about.

<comment><USER39> This happens all the time to me.

The other day, I found my old hitchhiker's guide to the galaxy infocom image (interactive fiction) and it turns out someone wrote some elisp that lets you play it in emacs.

(that said, elisp isn't a very expressive language for me, python is my favorite language right now)

</comment></comment><comment><USER40> A good resource for anyone who wants study Emacs further or try out things, I found this very helpful for me: [https://emacs.zeef.com](https://emacs.zeef.com)

</comment><comment><USER41> I used emacs for years and had accumulated about 10000 loc init.el over that time.

With my new employer I'm forced to use notepad++ on Windows. The difference in actual productivity: zero!

Emacs is a nice hobby but when you want do get shit done it won't help you being more productive except for some rare corner cases.

So don't buy into the Emacs Plattform. Maybe just learn the basics because sometimes it is the only editor installed. If you spend more than two hours on it you are wasting your time.

<comment><USER42> Once or twice a quarter I'll end up with a relatively mechanical task that I can do with a keyboard macro, query-replace-regexp/dired-do-find-regexp-and- replace. That normally saves me at least 30-45 minutes compared to either doing it manually or writing a script.

<comment><USER43> The parent mentions notepad++, which offers similar regexp and macro functionality.

</comment></comment></comment><comment><USER44> \---- TLDR ----

I completely agree with the others who say:

      - learn elisp instead of learning "emacs"
      - if you want to memorize something, just learn the name of the command: if you use it very often then learn/define a keybinding for it

\---- part 1: I'm happy I've learned elisp in the last year

People complain about memorizing emacs keybindings, but most of the time I just call the command name with M-x command-name. Only if I find myself using it often I bother memorizing or setting a keybinding for it.

As for why I use emacs, I started using it for org-mode, which I considered it's only killer feature at the time. Since 1 year ago I started learning elisp and I think only now I can see what's the whole point of emacs.

In just 1 year of (beginner-level) elisp I wrote 75 files containing elisp functions to help myself with dozens of tasks that comprise:

      - move/mirror parts of ascii diagrams
      - automate some tasks just clicking on custom org-mode links
      - wrap ammonite-term-repl to get Ammonite completion for scala scripts [1] [2]
      - add rudimentary support for kawa scheme to geiser (my first pull request ever (still waiting for response))
      - control video player from within emacs while I'm writing subtitles

\---- part 2: you can have different emacs configurations

Another common complain is that emacs tends to become slower as you add more and more packages. As a spacemacs user, I noticed that too. For this reason when I don't need spacemacs goodies I use multiple, different emacs configurations (with evil-mode though).

This is how I do it:

1 - Make a new ".emacs.d" user directory somewhere

2 - Make a new "init.el" user file inside it

3 - Add to the beginning of init.el :

        (setq user-init-file (or load-file-name "path-to-init.el"))
        (setq user-emacs-directory (file-name-directory user-init-file))

4 - Call emacs with:

        emacs -Q --load "path-to-init.el"

That's it.

You could achieve the same result using cask, which would be more elegant imo, but takes a couple of seconds more to start.

\---- part 3: use elisp to call other languages

As for elisp, once you have learned enough of it (not much), if you are determined not to use it, there are different ways to call other languages from it:

      - clojure through cider plus clomacs
      - common lisp through slime
      - shen through shen-elisp [3]
      - different compiled languages through dynamic modules:
        - C  (example at [4])
        - go (example at [5])
      - ... many others I haven't investigated...

Just out of curiosity, I explored the shen-elisp path. I tried a whole week to see if I could replace it with shen-elisp. At the end of the week I learnt how to call elisp from shen-elisp and shen-elisp from elisp... and the fact that every time you restart shen-elisp you have to re-declare types. However I abandoned the idea for 2 reasons:

      - Plain elisp is faster: I don't know the implications
      - I wanted to focus on elisp so I can contribute better to other elisp projects

\---- references

      [1] https://github.com/zwild/ammonite-term-repl
      [2] https://github.com/spellcard199/ammonite-term-repl-completion
      [3] https://github.com/deech/shen-elisp
      [4] http://kitchingroup.cheme.cmu.edu/blog/2017/07/08/Adding-numerical-methods-to-emacs-with-dynamic-modules/
      [5] https://mrosset.github.io/emacs-module/

</comment><comment><USER45> Vim is life.

</comment><comment><USER46> I recently tried to switch from vim to Emacs with spacemacs. I enjoyed it until I discovered Emacs has no support for tabs (ui tabs, not the character ;). I went back to vim mainly due to that, but still miss magit....

<comment><USER47> You can have many things going at the same time, and select between them using the buffer menu. I find the devotion of yet another chunk of screen real estate to the tab list rather a waste, but _shrug_ aesthetics.

C-x C-b

shows you the list of tabs ("buffers") and lets you select from them easily. As a bonus, the title portion isn't compressed to incomprehensibility when they get numerous.

<comment><USER10> I use tabs to switch between window configurations.

Say I code in Python, with docs and shell windows on the right. Then I want to quickly take a look at git history. But, if I start magit, it will hijack the window configuration and my carefully placed/resized windows will get messy. So, I open a new tab and start magit there. Now, I can switch between the two tabs - ie. window/buffer layouts - with a single key.

The fact that I mention saving the layout of windows should hint that I know you _can_ do this in vanilla Emacs by saving and restoring window configurations, but it's much less hassle with tabs. Also, you can hide tab bar (as well as menu bar and button bar) when you don't need it, and it's actually quite handy when you do need it.

To each their own of course, just saying there are good uses for tabs in Emacs, unless you want to delegate this to your WM and launch one frame per window config.

<comment><USER48> > To each their own of course, just saying there are good uses for tabs in > Emacs, unless you want to delegate this to your WM

You mention window configurations, and you say " it's much less hassle with tabs." You can assign a single key to switch between window configurations too and then it's practically the same, isn't it?

<comment><USER10> Yeah, not "practically", but simply "the same" \- that's exactly how half of my tabs (elscreen.el) is implemented (the other half being creating, displaying and updating the "tabbar"). In other words, if you use winner mode, or have a couple of custom wrappers around window layouts and use those, you're practically already using tabs, just without a tabbar! ;)

</comment></comment></comment></comment></comment><comment><USER49> Logging into "work" systems and typing "emacs" == "command not found". Typing "vi" opens a useful editor.

It's not that I hate emacs or have some aversion to anything _except_ vi/vim. The problem is that vi is _everywhere_ , and by mastering the always-available editor, I always have my tools at hand. On foreign systems, or highly regulated systems that I can't add software to, this is a huge advantage.

<comment><USER22> True, but the workflow you describe is not the natural one for Emacs.

Emacs has a built-in package called TRAMP [1] for remote work. You don't log into a distant server and open Emacs there, you use Emacs on your local PC and open the remote file naturally, using a syntax like /method:user@host:/path/to/file, but most often /-:host:/path/to/file (when using SSH access set as default, with your local user name). Except for the special file path it's just like for a local file.

Then when launching a shell command, or a full shell, or a grep or compile or whatnot from a buffer editing a remote file, Emacs will automatically launch the command remote machine too. That makes the experience rather transparent. It's possible to have multiple buffers editing files on different machines at the same time.

[1] [https://www.gnu.org/software/tramp/#Quick-Start- Guide](https://www.gnu.org/software/tramp/#Quick-Start-Guide)</comment></comment>


New Jersey town first in U.S. to use Uber to curb drunken driving - <AUTHOR> http://www.reuters.com/article/2015/10/23/us-new-jersey-drunken-driving-idUSKCN0SH21M20151023 <comment><USER2> Out of curiosity I gave driving for Uber a try during weekends for a few weeks last year. This article brings two thoughts to mind.

First I had a more than one passenger tell me during my time driving that prior to Uber they would regularly drive home after drinking from parties because they just couldn't get a cab in areas they were often in.

Second, driving drunk people is the absolute worst. Even if they don't puke in your car they are a pain to deal with[1], and less considerate of your vehicle in general. Having to deal with them one too many times was what lead me to stop driving at together. I initially found driving to be a fun way to interact with random people I wouldn't normally meet but the drunks killed it for me.

[1] During the few weekends I did it I had one drunk guy puke in my car second ride of the evening. Another belligerently refuse to tell me their location when the GPS showed them in a spot that was not near any road and become verbally abusive when I couldn't find them. Another stash a half open can of beer in the back seat pocket spilling beer all over the car. Uber pays for cleaning but they don't pay for lost income stemming for your car being out of commission until you can get it cleaned. I couldn't imagine having to rely on driving for any significant portion of my income under those working conditions.

<comment><USER3> 2 things:

1\. Not all drunks are bad. Yes there are bad apples. Rate them badly. 2\. Uber can and will deny someone from using uber.

<comment><USER2> You are missing the point. If you are someone who depends on Uber for your income and someone does something in your car that puts it out of commission even if it is only say 5% of people it can have a major effect on your income.

</comment></comment></comment><comment><USER4> This reminds me of a program in Florida (and few other cities?) where police gives free rides to drunk people back from bars. [http://www.browardpalmbeach.com/news/too-drunk-to-drive- palm...](http://www.browardpalmbeach.com/news/too-drunk-to-drive-palm-beach- police-will-give-you-a-lift-6445648)

<comment><USER5> In many European countries this is a very regular occurrence too, instead of taking drunks to jail the police take them home.

Although, this isn't a service you can request over the phone... just an (probably better) alternative to taking people to jail and charging them with public intoxication or whatever.

</comment></comment><comment><USER6> USC offers free Uber to students when traveling at night in the surrounding neighborhood. They've had a car service since the 70's, but before Uber it was a pain-in-the-ass to use. As a result, nobody drives drunk.

</comment><comment><USER7> What's the liability to the city if someone gets hurt while in an Uber-cab sponsored by the city? I don't mean driver maliciousness, I mean any kind of accident that an Uber driver might get into?

If someone relies on public transport and gets injured, the city may be liable if there's some wrongdoing/negligence. But is it different if it's through Uber?

<comment><USER8> Uber has a $5 million dollar insurance policy so that's your answer.

</comment></comment><comment><USER3> As much as I love this idea, my concern about this is that it may encourage individuals to rely on this as a way home.

I think that this should be an indication that safe transport back home is needed during drinking hours. (Big cities have this convered via public transport)

<comment><USER9> I wonder how much of a bar tax would be required to cover the bill. If it encourages more people to go out drinking more often it might be a net financial benefit. You could even pitch it as a jobs program.

<comment><USER10> It would need to be sufficient that the average noggt's drinking is made more expensive by the cost of the average Uber ride.

So those who choose to drink within walking distance will massively subsidise those who choose to come in from out of town.

<comment><USER11> Isn't it still beneficial to the folks walking home that there are fewer drunks on the road? May not justify the full subsidy but certainly would cover part.</comment></comment></comment></comment>


Building a LinkedIn Clone Using React.js - <AUTHOR> https://github.com/tifa2UP/Netly <comment><USER2> It was great work from everyone</comment>


The Quest to Make Code Work Like Biology Just Took a Big Step - <AUTHOR> http://www.wired.com/2016/06/chef-just-took-big-step-quest-make-code-work-like-biology/ <comment><USER2> That sounds like a step backwards to me. Biology is messy and way more complicated than code. I just want computers to do as they're told.</comment>


AR headset that changes focus of VR objects using the eye's focus - <AUTHOR> https://m.youtube.com/watch?v=5ypcG-dFNI8 <comment><USER2> yep, that part is going to be pretty important.</comment>


How we broke PHP, hacked Pornhub and earned $20k - <AUTHOR> https://www.evonide.com/how-we-broke-php-hacked-pornhub-and-earned-20000-dollar/ <comment><USER2> The takeway:

        You should never use user input on unserialize. Assuming that
        using an up-to-date PHP version is enough to protect
        unserialize in such scenarios is a bad idea. Avoid it or use
        less complex serialization methods like JSON.

<comment><USER3> Actually, the takeaway is not that "you should never use user input on unserialize." It is, that you should NEVER TRUST USER INPUT. This rule is as old as computing itself and trust of user input has always been the beginning of a security vulnerability. You need user input, you will use user input, but you must understand how it's used and filter, strip everything that is not needed away.

<comment><USER4> > you should NEVER TRUST USER INPUT

That is not clear at all and pretty useless. What does it mean? I should not accept any user input at all?

> strip everything that is not needed

That does not always work. What if I have a comment form that should accept any characters?

<comment><USER2> >What does it mean? I should not accept any user input at all?

No, it means you should never assume that user data is safe, or even sane. Assume, rather, that everything every user is sending you is malicious, all the time, and write your code accordingly.

>. What if I have a comment form that should accept any characters?

First, you probably shouldn't, because your database and HTML should be using explicit character encodings, so a comment form that accepts _anything_ doesn't make a lot of sense. How are you expecting to _deal_ with "any characters"? What happens when they paste in a binary blob, or javascript code?

Secondly, assuming you want to do that, you still shouldn't _trust_ the data. Add it to the database using parameterized queries, escape it when rendering, never mix it in to javascript variables and never serialize it into a format designed to unserialize executable objects.

It's not an unreasonable burden to expect web developers to at least be aware and code defensively. _Especially_ with PHP.

<comment><USER5> > it means you should never assume that user data is safe, or even sane

I'm curious if Haskell's purity helps developers focus on this issue and therefore makes it easier to mitigate. Given that all user input/state already has to be handled carefully (for ex: with monads). It will be obvious in the codebase which parts need to be zero'd in on for possible attack vectors.

<comment><USER6> >I'm curious if Haskell's purity helps developers focus on this issue and therefore makes it easier to mitigate

No, haskell's type system does, not its purity.

>Given that all user input/state already has to be handled carefully (for ex: with monads)

What? Monads are not some mythical beast, there is nothing "handled carefully" about it. A monad is just a general interface.

<comment><USER5> I'm talking about clear separation of state via Monads making it easier to _focus_ on the riskier input. For example when you are doing code reviews. That is about the developer nothing to do with some inherent functionality of Monads. Not sure what it being a "general interface" has to do with that. Maybe I wasn't clear.

<comment><USER6> >Not sure what it being a "general interface" has to do with that

I was explaining what monads are. You have read some of the weird misconceptions about haskell and monads and are now repeating them.

<comment><USER5> How does purity _not_ help the developer focus in on areas where user input might have a negative affect the codebase or system?

I used monads only as an example (in brackets) but it's hardly the only form where purity creates clear divisions in the codebase. So, once again, the specific functionality of monads has nothing to do with it. I'm speaking about the coding style that Haskell promotes making detecting bugs easier during code reviews.

Having done security reviews of code I would have loved to have that type of distinction exist in a codebase compared to the usual OOP mess (with PHP or Ruby for example, which is typically the only paid work available in infosec) where state/user input is leaking all over the place. Compared to clearly defined paths containing IO - which are separated from pure functions which don't have unexpected side effects and require far less scrutiny.

I'm answering my own question here but I was hoping someone who has more experience than me at conducting security-centric code reviews would chime in to provide their perspective.

<comment><USER6> I don't know how to be any more clear. Monads are not an example, that is the point. It is like saying in python "Given that all user input/state already has to be handled carefully (for ex: with dictionaries)." It is nonsense.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> OT: Is there a site that curates these kinds of interestingly detailed hacks? Like Dan Luu does for debugging stories? ([https://github.com/danluu/debugging- stories](https://github.com/danluu/debugging-stories))

<comment><USER8> The r/netsec subreddit: [https://www.reddit.com/r/netsec/top/?sort=top&t=all](https://www.reddit.com/r/netsec/top/?sort=top&t=all)

<comment><USER9> Interestingly, I've noticed just about every well upvoted story on /r/netsec will hit the HN front page 2-3 days later.

<comment><USER10> Arbitrage opportunity there: submit them to HN yourself.

<comment><USER7> I've been guilty of doing that before. Also, from top r/reverseengineering, though that subreddit is a little less traveled so doesn't get as many comments, so it's interesting to read what HNers think.

</comment></comment></comment></comment></comment><comment><USER11> That moment when the company you work at is on the front page of Hacker News xD

<comment><USER12> Seriously, please do an AMA. As a developer, I am very curious about how it feels like working for a company like that :)

<comment><USER13> Some other Pornhubbers did one 2,5 years ago: [https://www.reddit.com/r/IAmA/comments/1un3wn/we_are_the_por...](https://www.reddit.com/r/IAmA/comments/1un3wn/we_are_the_pornhub_team_ask_us_anything/)

</comment></comment></comment><comment><USER14> This is an elaborate hack and a very detailed writeup. Thanks for sharing.

</comment><comment><USER15> > Using a locally compiled version of PHP we scanned for good candidates for > stack pivoting gadgets

Surprised that worked. Guess they got lucky and either got the comiler+optization flags the same as the PHP binary used, or the release process can create higly similar builds.

<comment><USER16> They mention that PH had a custom compiled PHP and that's why they couldn't get the address of the function they wanted to call for evaluating code.

My understanding is that ROP gadgets are a separate issue. Basically you want to find a function that compiles to assembly instructions resembling the ones you need to move the stack pointer to your desired location. Testing this locally shouldn't be a problem, because functions across builds will compile to the same assembly instructions (even if their headers have different load addresses).

Again, that's my understanding - I have a very vague grasp of this stuff.

</comment></comment><comment><USER17> Really good write up. Some people are really smart, I wouldn't ever be able to do that kind of stuff even after being programming for years.

<comment><USER18> As well as being good, they'll also be very experienced. What you're seeing in that post is specialised knowledge, likely built up over many years. We can't all know everything, as much as we'd like to!

</comment></comment><comment><USER19> I have some questions about two things in the exploit code that puzzled me:

      my $php_code = 'eval(\'
         header("X-Accel-Buffering: no");
         header("Content-Encoding: none");
         header("Connection: close");
         error_reporting(0);
         echo file_get_contents("/etc/passwd");
         ob_end_flush();
         ob_flush();
         flush();
      \');';

1\. they seem to be using php to code the exploit (solely based on the $ before the variable name) but i've never seen the 'my' keyword before, what exactly is this language?

2\. if i understand the exploit correctly they got remote code execution by finding the pointer to 'zend_eval_string' and then feeding the above code into it. doesn't that mean the use of 'eval' in the code that is being executed is unnecessary?

<comment><USER20> >i've never seen the 'my' keyword before, what exactly is this language?

It's Perl: [http://perldoc.perl.org/functions/my.html](http://perldoc.perl.org/functions/my.html)

</comment></comment><comment><USER21> Appears to be experiencing the hug of death. May be quite slow

<comment><USER22> I guess the site is served using PHP.

<comment><USER23> That's funny because in my experience php is one of the fastest languages.

<comment><USER24> FWIW, it places well across TechEmpower benchmarks:

[http://www.techempower.com/benchmarks/](http://www.techempower.com/benchmarks/)

<comment><USER25> Raw PHP is reasonably fast. The performance issue comes with loading source files on every request: [http://talks.php.net/show/froscon08](http://talks.php.net/show/froscon08)

This means that there is a conflict between performance and having a well structured object oriented framework.

Demand loaded classes and byte code help a lot with that: [http://www.yiiframework.com/performance/](http://www.yiiframework.com/performance/)

Best would be a model where a persistent process handles multiple requests concurrently, but that is not normal for PHP. So you need to make sure that all the libraries you are using are not leaking, have a nice db connection pool, and write a PHP framework that handles concurrency. Might as well use a better language at that point :-)

<comment><USER26> > This means that there is a conflict between performance and having a well > structured object oriented framework.

What do you need a 'well structured object oriented framework' for? You're going to build up a huge object graph in memory, to output some HTML, and then throw away all the objects at the end of the request. Nobody is going to see your beautiful object tree, so don't bother. A blog entry page should be super simple.

header, title, content, comments, recent comments, footer.

Header and footer are dead simple echos of the boilerplate, maybe replace in the html title or something. Read the title and content from disk[1]. Have another data file for all your articles for the index page.

I prefer not to have comments on my blog, but if you must, you can put them in a database; limit to something like 100 or 1000 comments per article (because really) and limit threading, and it's going to be pretty quick to query them (make sure your webserver is doing reads from a database in the same metro area, if not on the same box).

Recent comments is across all blog entries; I would probably add a index on the time in the comments table and just select 2 from there; you could union that into the earlier comments query if you don't want to make two round trips to the database.

You don't need to do this with concurrency, each page load has barely anything to wait for, so more threads doesn't help throughput. Run enough php workers (php-fpm, or apache children if you're using apache_mod_php) to keep your cpu busy, and you're golden.

[1] There's four articles on this blog -- it doesn't need a database. PS run php as a user that can't write anywhere on the disk, and push the blog entries and the summary datafile with another user.

Edit to add: If you skip comments (or outsource to disqus or some other comments w/ javascript platform), you can make the whole site just static html, and leave PHP at home. OTOH, these guys are running Wordpress, because they like frequent security updates?

</comment></comment></comment></comment></comment></comment><comment><USER27> wow

From a legal perspective how do companies and hackerone create a binding exemption from laws used to prosecute hackers?

<comment><USER28> In the US the law is against unauthorized access. If a company agrees to let people try to hack their stuff, then the access is authorized and legal.

<comment><USER29> To what extent? What if you do something on accident that ends up messing up their stuff? Just the first example I can think of: you figure out a way to reboot an instance which lets you exploit a race condition in some auth code, and don't realize that the instance you're killing is critical for some other function (let's say billing) and you end up causing some real monetary damage, even though you had no idea.

Are there any legal precedents for this?

<comment><USER30> It's in the agreement with you and the company. Usually it says if you cause a side effect like that you are at fault.

</comment></comment></comment></comment><comment><USER31> So does Pornhub's bug bounty program include some number of years of free paid membership along with financial bounties? Kind of a "treat us right and we'll let you treat yourself right" kind of thing?

<comment><USER29> If you know enough to be able to pull off hacks like this, you surely know enough to get more of this kind of thing than you'd have time to watch in 10 lifetimes. I doubt that such a "reward" would be very appealing to those who participate in the bug bounty program, and it'd honestly be a sleazy business proposition, which would harm the professionalism of operating a successful bug bounty program. And yes, I'm completely serious.

<comment><USER31> I'm glad you were serious, because frankly I wasn't. I'm sure there's more than enough "free" porn out there for just about anyone's taste, so I doubt that free accounts would be a significant incentive anyway.

But meh, sometimes jokes fall flat.

</comment></comment></comment><comment><USER32> Too bad they didn't just go ahead and:

> Dump the complete database of pornhub.com including all sensitive user > information.

And of course leak the data to expose everyone that participates in this nasty business. It is such a sad thing that people are even proud to work at companies like this where humans are not worth more than a big dick or boobs.

And then you get around and say that child porn is so horrible. No, _all_ porn is horrible and destroys our families and integrity. How can there be any dignity left if these things are held to be something good?

<comment><USER33> Righteous much? The most insidious prison one could ever be put into is the arbitrary restriction in one's own mind. Luckily for the rest of us, we are in the 21st century and most people are educated enough to not believe in nonsense like witches any more. Pornography is heading in the same direction, people are finally starting to realize that sexuality is part of one's natural self. When you consider that each of us was born with a dick or tits, there is nothing wrong by accepting that and getting turned on by appreciating the aesthetics of it. It has been done since antiquity and even before that, and then we regressed into the dark ages of morality. At the very least, it is biology. Science? Yes please!</comment></comment>


The Great Video Game Crash of 1983 - <AUTHOR> http://tvtropes.org/pmwiki/pmwiki.php/Main/TheGreatVideoGameCrashOf1983

<comment><USER2> Ah, I remember that time well. After graduating from Caltech in 1982, and then spending a month at a defense contractor (hired for an interesting project, project got cancelled before I started, and the alternative work they found for me sucked), I went to APh Technological Consulting, a Pasadena company consisting mostly of Caltech engineering graduates.

APh had done the electronics design, system software, development system, and early games for Mattel for the Mattel Intellivision. There were some amazing people there. Perhaps most memorable was Hal Finney, who later became well known as the second developer hired by PGP Corporation and as a cryptographic activist.

We were working on the next generation Intellivision when the crash happened (and I got laid off). APh was designing a new, much more powerful, GPU for the new system. For the prototype units we developed on the GPU consisted of a card cage with several hand wire wrapped circuit boards.

For everyone who was NOT Hal, this was a fairly typical occurrence:

1\. work until very very late on your game, which is supposed to be shown at a closed demo at CES. Finally, you just have to go take sleep. Do so.

2\. get back to work and you find a note from the hardware guys. They've rewired your GPU, adding or removing registers, changing graphics modes, sprite handling, and so on.

3\. rewrite your code to deal with the hardware changes. Since all the code was in assembly language (for the annoying GI1620 processor), this was non- trivial and time consuming.

Somehow, Hal was immune to this. He could fix up his assembly code to cope with any change the hardware people made in just a few minutes.

Anyway, the article's point about poor quality third party games eroding consumer confidence is correct.

The first group of third party developers were fine. Activision was formed by former Atari developers. They knew the Atari system in and out, and could produce top quality games. Imagic was formed by Atari and Mattel people, and there were some former APh people there too. They understood the Intellivision and could produce top quality games.

The second generation of third party developers did not have that kind of knowledge. We saw independent Intellivison games that didn't take any advantage of the Intellivision system software--they just talked directly to the hardware. These games were almost all crap. The Intellivision firmware essentially consisted of a small game oriented operating system. It would let you do things like give it a sequence of images and a rate and it would animate a sprite with those images at that rate for you. You could give it a velocity and it would move that sprite for you. You could register event handlers that it would call when things collided, when controls were pressed, and so on.

It was that system software that let APh and Mattel write complex games like Baseball when limited to a 1k cartridge (actually, Baseball may have been a 2K cartridge) and something like 320 bytes of RAM. If you didn't take advantage of that system software and so had to do all that animation and event handling and hardware management code yourself you either had to restrict yourself to much simpler games, or you had to make a cartridge with bigger ROM and onboard RAM, which would greatly increase the price of your game.</comment>


The Asian American 'advantage' that is actually an illusion - <AUTHOR> https://www.washingtonpost.com/news/wonk/wp/2016/12/29/the-asian-american-advantage-that-is-actually-an-illusion/?hpid=hp_hp-more-top-stories_asianam-8a:homepage/story&utm_term=.15a3d724f940 <comment><USER3> Jeff Guo at the Washington Post seems to be making some odd conclusions lately.

For the study, _Upward Mobility and Discrimination: The Case of Asian Americans_ , compare his reporting: [https://www.washingtonpost.com/news/wonk/wp/2016/11/29/the-r...](https://www.washingtonpost.com/news/wonk/wp/2016/11/29/the- real-reason-americans-stopped-spitting-on-asian-americans-and-started- praising-them/)

To Marginal Revolution's reporting: [http://marginalrevolution.com/marginalrevolution/2016/11/upw...](http://marginalrevolution.com/marginalrevolution/2016/11/upward- mobility-discrimination-asians-african-americans.html)

It's like they read totally different papers. Or Guo is just gonna talk about whatever he wants to talk about regardless of what's on his desk, I guess. Which might be what's happening here.

If you're really interested compare both of them to the study: [https://drive.google.com/file/d/0B8J_qdFYwNJ6TXdRVkM5S3lMNUU...](https://drive.google.com/file/d/0B8J_qdFYwNJ6TXdRVkM5S3lMNUU/view)

<comment><USER4> Sounds like someone reads SSC :)

</comment></comment><comment><USER5> This article has a glaring logic flaw. After COLA, Asians and Whites show roughly the same median household income. But among minorities, Asians still have higher median household incomes than their Black and Hispanic counterparts. The author barely makes an attempt explain _why_ this is the case. Doesn't the data just reinforce the perception that Asians are the model minority?

So what the article should have said, is after COLA, Asians still have an "advantage" over Blacks and Hispanics. But the illusion is that they don't do better than Whites, they perform the same. Which is not the illusion most people had in mind.

<comment><USER6> People don't have negative stereotypes towards Asians like they do for blacks and hispanics. People assume they are intelligent. When an Asian man walks down the street, white peoples don't cross to the other side like when they encounter a black man. If you see an Asian in a BMW people assume they are a doctor or engineer, if you see a black person in a BMW, people assume they are a drug dealer, the car is stolen, or they play professional sports.

<comment><USER7> > People don't have negative stereotypes towards Asians like they do for > blacks and hispanics

They absolutely, absolutely do have negative stereotypes towards Asians. There are a _different_ set of negative stereotypes (and in fact, different stereotypes for East Asians, South Asians, and West Asians), but there very much are negative stereotypes towards those groups.

The effect of these stereotypes is sometimes mitigated by the fact that Asians, unlike African-Americans, largely came to the US (a) of their own free will, and (b) on work visas which _explicitly_ bias selection in favor of previous wealth and education status. But on the other hand, in other cases, the effect of these stereotypes is _enhanced_ by this difference as well - <USER2> depends on the situation in which they manifest.

</comment></comment></comment><comment><USER8> This article sure is strange:

>>The contrast between whites and Asians is particularly stark. Nearly 1 in 5 white Americans reside in rural counties, where a dollar goes a lot further. But 97 percent of Asian Americans live in or near a major city, where the cost of living is higher.

By definition of living in a lower income area and subsequently making less money, you are unable to live in a nicer, high cost of living area. Personal preference aside, this means you're living in a more desirable area (for many, by definition) and these areas tend to have more job opportunities.

>> Asian Americans, largely for historical reasons, cluster near expensive coastal cities. More than 25 percent of Asian Americans live in one of the four metro areas with the highest costs of living — Honolulu, San Jose, New York and San Francisco. Overall, about 73 percent live in metro areas with above-average costs, 24 percent live in metro areas with below-average costs, and 3 percent live in rural areas.

This is basically irrelevant. One could also say, Black Americans, largely for historical reasons, cluster near more Southern large cities and towns (Dallas, Georgia, New Orleans, etc.)

>> When we factor in these geographic patterns, the racial income gaps start to look a little different

Yeah, Asian Americans still are making much more than Black and Hispanics. If this is supposed to negate the assertion many make that "For that reason, Asian Americans have often been invoked as a way to excuse the income gaps between whites and blacks or whites and Hispanics..." this isn't doing a great job.

>> If you compare whites and Asian Americans with the same amount of schooling, Asian Americans actually make less money.

They should also compare Asian Americans with Black and Hispanic Americans too, for good measure.

\---

This conclusion may be faulty, but I'm basically getting the following: for "elite Asians" (keep in mind, most Asians are not "elite"), they enjoy inklings of White privilege, if there's such a thing. However, they do not receive as much of said privilege as actual White people.

<comment><USER9> What he's trying to imply is that the place people live is affected by more than simple economics. There are differing historical and cultural reasons why blacks and Asians might live in different cities, regardless of their economic power.

So controlling for their environment, Asians stand out less than they do just by looking at raw numbers. Compared to where they live, they stop outperforming whites, they just tend not to live in poor areas where whites also populate.

<comment><USER10> > So controlling for their environment, Asians stand out less than they do > just by looking at raw numbers. Compared to where they live, they stop > outperforming whites, they just tend not to live in poor areas where whites > also populate.

That's begging the question of why they tend to live where they do: whether someone lives in a high-income/high-cost/economically-productive area is in large part driven by whether they can git into that economy.

By your logic, I could take Americans in high-income areas and those in low- income areas and prove that the former don't stand out in terms of income (which is obviously silly).

</comment></comment></comment><comment><USER11> >So while Asian American households seem richer on paper, many of them don't really feel richer because they live in places where the rent is high and the groceries are more expensive.

Ok, but other things like online purchases and college tuition aren't affected by cost of living. If you live in a high cost of living area sending a kid to an Ivy is relatively cheaper for you than someone in a lower cost of living area.

Cost of living is high partially because there is higher demand for that place. Cincinnati isn't San Francisco.

<comment><USER12> >If you live in a high cost of living area sending a kid to an Ivy is relatively cheaper for you than someone in a lower cost of living area.

I don't disagree with your point but this is a very strange example. Most people don't send their kids to Ivies (most don't even think about applying), and even fewer pay full price.

<comment><USER11> My general point is that college is a large cost that isn't affected by CoL. Same for vehicles.

<comment><USER13> I live near London so I'm a bit of an outlier, but housing is by far my largest expenditure, double that of food and approximately 7 times that of vehicles/transport.

Also (AIUI) in the US most of the cost of education is in huge loans taken out by the child.

</comment></comment></comment></comment><comment><USER14> I guess it goes without saying that the headline is clickbait. The difference isn't "an illusion". Rather, the article describes an insightful way of looking at incomes based on cost-of-living for different geographies.

The yawning difference between Asians and whites mostly disappears after accounting for geography. But it's still quite large versus other segments (blacks, hispanics).

Based on the headline, I was expecting to see income convergence among the four groups. Not the case at all.

</comment><comment><USER15> Why would you factor out local cost of living when comparing incomes? For the wealthy, a high cost of living is a choice to live where they want.

<comment><USER4> >For the wealthy, a high cost of living is a choice to live where they want.

To an extent. I think some of them might not mind living in less expensive rural areas if they didn't need to be in proximity to their workplace or common areas of business.

We aren't exclusively talking ultra-wealthy billionaires here, I imagine the article is mostly concerned with the more common wealthy upper-middle class workers like programmers, doctors, etc.

</comment></comment><comment><USER16> Another _huge_ flaw:

COL is not at all a sunk cost like this article has you believe; places with higher COL are generally better places to live. it's actually is a good indicator for the hard to quantify value in living one place over another. In other words, you can't just blindly factor it out and call it a day.

There is real value in living in San Francisco vs bumblefuck. It's the whole reason people want to live there in the first place despite it's higher COL!

In turn for your extra COL, you generally get access to nearby airports for travel, access to good jobs, a variety of career choices, a wide assortment of options for food and social nightlife, etc. These things have real value. You _pay_ for this value.

you can't just blindly factor out COL.

</comment><comment><USER17> Has no one done a study on the amount of time each race spends studying? It seems to be a very easy data to collect and could help us draw an actual conclusion.

<comment><USER16> But when you factor out how many more times Asian parents tell their kids to study, they actually study about the same.

/s

</comment></comment><comment><USER18> It has to be noted that Asian people still drastically out-earn black people and are roughly "equal" with white people by city. Really the data shows that discrimination is more anti-black than it is pro-white (I think it would be helpful if Hispanics could be stratified by generation).

It's also revealing of the author's personal biases that he considers living in expensive coastal cities to be a disadvantage. In nearly every other context it's considered an advantage, despite the cost of living; imported goods and travel are cheaper, and infrastructure is nicer. The education system also tends to be better in rich cities, although it is worse in California due to Proposition 13. Having tenure in growing cities (and therefore owning property) is also a significant advantage in terms of wealth. Someone who bought a $200,000 house in Indianapolis in 1980 is doing a lot worse than someone who bought a $200,000 house in LA in 1980.

Of course the really old money everywhere is dominated by white people, but most white people don't have access to that.

<comment><USER19> > Really the data shows that discrimination is more anti-black than it is pro- > white

Or it shows that there is something about the statistically average black person that makes them less successful than the statistically average asian person. I don't claim to know what the difference is, but this is a fairly obvious inference to make. I'd actually say this is, a priori, a lot more likely than "everyone coincidentally discriminates against these particular racial groups but not any of these other ones".

My _suspicion_ (not based on any hard evidence) is that much of this difference is accounted for by the vast and obvious cultural differences between the average asian person in the US and the average black person in the US. Most Asian (South or East) immigrant cultures in the US _aggressively_ push for educational and professional success. Black culture in the US doesn't.

<comment><USER20> > I'd actually say this is, a priori, a lot more likely than "everyone > coincidentally discriminates against these particular racial groups but not > any of these other ones".

How would you change that prior if you were informed one of those groups had been enslaved on the basis of race for a couple of centuries, ruthlessly oppressed for another century, then blamed for most of the problems in the country for the lion's share of the next one, becoming the primary subject of every leadership discussion?

> Most Asian (South or East) immigrant cultures in the US aggressively push > for educational and professional success. Black culture in the US doesn't.

Educational attainment is more difficult to translate into professional success for blacks in the US; black college graduates have twice the unemployment rate as white college graduates[1]. With the rising costs of education and the yawning gap between white wealth and black wealth, the value proposition is only becoming worse. In my experience black people think that their best chance of success lies in sales and/or entrepreneurship. The only other choice is being the best of the best.

[1] [http://www.theatlantic.com/education/archive/2014/05/when-a-...](http://www.theatlantic.com/education/archive/2014/05/when- a-degree-is-no-guarantee/371613/)

<comment><USER17> It doesn't seem like that study normalizes for quality of college degree. I don't think it's a stretch to say that the average "ranking" (used as a proxy for quality) of the alma matter of black people is worse than that of other races.

</comment></comment></comment></comment><comment><USER21> I agree about the logic flaws in this article. As someone who works with one of the largest public college systems in the USA, yes, URM and Non_URM students do tend to give off the impression that asian americans fair better, and yes it is an illusion- however, focusing on ethnicity is a mistake when focusing on students who's parents also went to college- and pre-existing socio-economic status. Asia is much father away then mexico or what have you- it costs more to come here from asian countries then it does from hispanic contries on travel distance alone.

I don't like this article, I also don't like the URM/NON-URM status that school systems make based on ethnicity alone. There are many fields in which non_urm (meaning not white or asian) preform better- and they call these negative gaps. A gap is an ABS there is no -Gap. Pardon my spelling mistakes.

<comment><USER21> The illusion of it all is that you can measure based on "ethnicity" instead of something that matters more... such as being a first generation college student- being a first generation immigrant to the states- if you are eligible for PELL status or not. It's silly that we, the USA, still use ethnicity over socio-economic background as a measure to compare student success. When in all reality- ethnicity does not matter- it's about the culture and family you are raised in. No ethnicity is innately better then any other one. Culturally some might be more focused on education- and as a country, the United States is losing that culture because instead of focusing on future generations we focus on ethnicity and dumb shit.

</comment></comment><comment><USER22> I'm always amazed at how obsessed certain people are with "race" (aka ethnicity) in this country. I'm very well aware of the tough racial history and I'm not saying that kind of ethnical stats shouldn't be made, but frankly, shouldn't we be talking about social classes instead?

This last presidential election was a great display of what I am talking about from both side. While one side was demonizing non-WASP, the other side banked its whole strategy on the fact that african-americans would surely vote for them (which is, when you think about it, basically saying that most people's vote cannot be predicted as they may flip/flop and are usually 50/50 +/\- 5%, except for african-americans of course ...). And of course the next day, they were blamed responsible for the defeat.

</comment><comment><USER21> Everyone can bend data. I work with the raw data of this kind of thing. Sure his graphs and charts are "right" but they're bent data.

As a data scientist we don't cook the books. It's the readers of our results who decide to Cook them.

</comment><comment><USER21> [https://calstate.edu/highschool](https://calstate.edu/highschool)

On the second tab you can see demographics.

<comment><USER21> Full list of highschools: [https://csudata.calstate.edu/highschool/school- list?pagestyl...](https://csudata.calstate.edu/highschool/school- list?pagestyle=hs)

</comment></comment><comment><USER23> This is such incredibly poor agenda-driven "journalism", with cherry-picked data used to (poorly) attack a sort of straw man argument: _Asian Americans seem to offer proof that minorities can prosper — and even leapfrog whites — if they work hard and jump through the right hoops. For that reason, Asian Americans have often been invoked as a way to excuse the income gaps between whites and blacks or whites and Hispanics._

So even assuming the (unconvincing) argument that where asians live can account for the fact they are __more __successful than whites, how does their nonetheless COL-adjusted near parity (still ahead!) vs. whites undermine the idea that minorities can succeed in the USA?

It's easy and cheap to virtue-signal your care for this difficult problem, but the elephants in the room here are IQ and culture, and mainstream liberalism is frankly bordering on fraudulence with its refusal to confront these topics. If you actually care about fixing the worsening income and wealth gap between races - and I would suggest everyone should, as it is clearly toxic to our social fabric - it's long past time to have honest conversations about all of the potential underlying causes and possible solutions.

<comment><USER24> You're on the money.

Sadly, the only way to even discuss culture's role without being labelled a bigot is to discuss the cultural differences within white Americans. When you're talking about how cultural traits prevalent in Appalachian communities like the one I grew up in exacerbate inequality, suddenly you have an audience. See the author J.D. Vance who wrote 'Hillbilly Elegy', and has subsequently become a darling of the political left.

It's funny, because my time spent in poor white communities and poor black communities allowed me to see how radically similar the two communities cultural traits often are. And also very similar is the fact that these communities have mixed within them families who go against the grain and succeed by not succumbing to the cultural norms around them.

Thing is, if we're honest, it's a lot easier to become popular as a minister or a politician when you tell a disenfranchised group of people that they are victims of someone else than to tell them they need to fix their own culture. Poor white families whose fathers abandon them have the same issues as black families whose fathers are absent, but the media would rather focus on the edge cases where racist cops shoot black men without cause.

Nobody ever asked black Americans to vote for a spokesman. Instead the media has decided that Al Sharpton and his ilk should be the ones consulted as to what black folks care about. He's in New York like they are, so it's easy for them and lucrative for him. In the meantime, kids hold signs saying "Black Lives Matter", but nobody wants to hold a sign that says "Black Dads Matter" even though a movement like that would do more to help black America than any government program. 70% of children being born out of wedlock has a huge effect, whether anyone is willing to admit it or not. And blaming incarceration solves nothing. The majority of absent fathers in the black community are not incarcerated.

<comment><USER25> Why do you blame culture, but ignore historical practices like redlining, or the obvious correlation with poverty, or the fact that American black people have had scarcely 50 years of equality under the law? That drugs in black communities are treated as crime, but drugs in white communities are seen as a public health crisis?

There are hundreds of issues of infinitely more substance than whether black children are conceived in wedlock.

What makes you a bigot isn't that you see that as something worth addressing. You're a bigot because, of all the problems facing black communities, you choose that one to judge them by.

<comment><USER26> I mean... jeez, again with the name-calling. Have you looked up the definition of "bigot"? It's defined as a person who is intolerant toward those holding different opinions.

In the comments I've seen you post so far, the intolerant one is... you.

<comment><USER27> There is nothing intolerant in calling someone a bigot.

</comment></comment></comment></comment></comment><comment><USER28> "Asians are really not better than whites" maybe, that should be the title.</comment>


Porsche introduces blockchain to cars - <AUTHOR> https://newsroom.porsche.com/en/themes/porsche-digital/porsche-blockchain-panamera-xain-technology-app-bitcoin-ethereum-data-smart-contracts-porsche-innovation-contest-14906.html <comment><USER3> I wonder if they're just announcing this to see what it can do for their stock price. At the risk of saying something completely reductive, I feel like any technical person with a beginner's grasp of what blockchain technology can do is only going to say "but why", and the appeal here is going to be limited to speculators or people impressed by the social proof that blockchain is impressive to others.

<comment><USER4> I could not agree with you more, the hype to reality ration surrounding blockchain is beyond ridiculous to the point that a mental heuristic saying "any blockchain headline is bullshit" becomes more accurate with each new article...

</comment></comment><comment><USER5> > "Taking 1.6 seconds, the process of opening and closing the car via an app > is up to six times faster than before. In addition, efficient cryptographic > encryption takes place."

A remote car key. You've invented a remote car key.

<comment><USER6> It's even worse than that. They've invented a remote car key where, if 51% of the other key holders agree, stops working.

This stupidity and fetishistic lust after overcomplication and fad chasing must end. I can only hope the mechanical engineers are more sensible.

</comment></comment><comment><USER7> So I read this and I can't tell what it actually does in the car.

<comment><USER8> Sounds like you/porsche can allow lock/unlock access via blockchain, using smart contracts. Does this open the door (no pun intended) for governments to deliver subpoenas for getting access to locked cars? Convenience is always at the expense of freedom.

<comment><USER9> Can't wait until it costs $30 and takes 45 minutes to unlock my car!

<comment><USER10> >Can't wait until it costs $30 and takes 45 minutes to unlock my car!

Sorry, but you got it wrong, the real money is in the locking tariff ... ;)

</comment></comment></comment></comment><comment><USER11> Porsche has been playing with new ownership models recently, including a sort of membership club where a fixed monthly payment gets you access to any model.

So this blockchain-based entitlements thingumy could be seen as an attempt to put in a flexible technology to support more experimentation along those lines.

<comment><USER12> What they are doing is just the next logical step from personal leases - <USER2> it's actually brilliant at that. Instead of say, a lease at $1000/month for a new Porsche, you pay $2000-3000/month for access to almost any model whenever you want it - but I imagine it makes Porsche a lot more money as long as most of the fleet is occupied at any given time.

<comment><USER11> Exactly. That's the kind of thing (and extensions of) that you could conceivably use a blockchain to support, if you think about decentralizing the fleet.

</comment></comment></comment><comment><USER13> I'm so glad the sentiment has changed on this useless garbage. Why would anyone want to decentralize car security? Porsche could just unlock your car through a centralized app. Why does everyone need access to that?

</comment><comment><USER10> Just in case, the previous mechanism wasn't that much safe:

[https://www.theguardian.com/technology/2013/jul/26/scientist...](https://www.theguardian.com/technology/2013/jul/26/scientist- banned-revealing-codes-cars)

The paper has been published only in 2016, with a few amendments to "hide" (maybe) the parts that could have led to replication by thiefs:

[https://www.computerworld.com/article/2971826/cybercrime- hac...](https://www.computerworld.com/article/2971826/cybercrime-hacking/hack- to-steal-cars-with-keyless-ignition-volkswagen-spent-2-years-hiding-flaw.html)

[https://www.usenix.org/conference/usenixsecurity15/technical...](https://www.usenix.org/conference/usenixsecurity15/technical- sessions/presentation/verdult)

Please note how the Authors only tested a few VW models, but Porsche and a number of other luxury car manufacturers used the same chip/mechanism so that itis very likely to be hackable in a similar way.

</comment><comment><USER14> Blockchain all the things!

Well, I guess we officially know what this years buzzword technology that will be added to everything whether it makes sense or not is.

</comment><comment><USER15> I suspect that blockchain will eventually serve as a peer to peer database. If you can make it secure and no one needs to put up the infrastructure to maintain then it's a boon for car makers. We have a long way to go but it has promise.

Porsche is starting so it seems like BS but it has potential as it develops.

</comment><comment><USER16> I don't get how these logging and sending commands to a car use cases benefit in any way from a blockchain as opposed to just having a central server handle it.

If anything, having Porsche be responsible for the security of that system is a benefit. Not to mention the reduced overhead.

I am very interested in seeing how my assumptions are proved wrong.</comment>


iSee: Using deep learning to remove eyeglasses from faces - <AUTHOR> https://blog.insightdatascience.com/isee-removing-eyeglasses-from-faces-using-deep-learning-d4e7d935376f#.o3ho61xlz <comment><USER2> But the image becomes blurry. Doesn't replace manual eyeglasses removal yet.</comment>


StartPage.com and DuckDuckGo Search Privacy Featured in Search Engine Watch - <AUTHOR> https://searchenginewatch.com/2017/12/15/whats-behind-the-trend-towards-private-search-engines/ <comment><USER2> > Edward Snowden's NASA spying revelations

ಠ_ಠ

<comment><AUTHOR> His revelations were instrumental in driving people to seek privacy-friendly search options.

<comment><USER2> Agreed. I was frowning at the editing error: NASA instead of NSA. Kind a massive miss on that one.</comment></comment></comment>


Comey's opening remarks [pdf] - <AUTHOR> https://www.intelligence.senate.gov/sites/default/files/documents/os-jcomey-060817.pdf?hn <comment> tuna-piano Political futures markets are trading basically unchanged after the release of this, with a 77% chance trump is president at the end of 2017. Get your bets in!

[https://www.predictit.org/Contract/5140/Will-Donald-Trump- be...](https://www.predictit.org/Contract/5140/Will-Donald-Trump-be-president- at-year-end-2017#data)

P.S. "Will James Comey mention "obstruction of justice" in Thursday's Senate hearing?" is trading at 46%

[https://www.predictit.org/Contract/6788/Will-James-Comey- men...](https://www.predictit.org/Contract/6788/Will-James-Comey-mention- obstruction-of-justice-in-Thursday's-Senate-hearing#data)

</comment><comment><USER2> I'm having a hard time finding a response. But I don't see any malicious intentions or acts of obstruction. Though, I can understand how those situations are unnerving for a goal of remaining independent.

<comment><USER3> This doesn't sound damning enough to you? 'He described the Russia investigation as "a cloud" that was impairing his ability to act on behalf of the country' 'He asked what we could do to "lift the cloud."'

Additionally, his insistence on "loyalty" is terrifying to me. As soon as the FBI isn't independent, parties will be involved in the judicial process.

<comment><USER4> He mentions several times that what's he looking for is PR on the fact (acknowledged by Comey) that Trump personally was not under investigation. Certainly could be inappropriate, but this isn't the smoking gun the dems wanted.

<comment><USER3> Agreed that it's not as powerful as some had hoped. That said, his repeated requests for loyalty, followed by asking him to halt or hinder an investigation, and then the subsequent 'firing' can be fairly easily related. It's not acceptable to ask the FBI director to stop an investigation and then fire him when he doesn't.

<comment><USER5> His requests for loyalty have a pretty innocuous explanation, that is hinted by Comey himself - this was in the midst of an anonymous revolt from intelligence agencies against the President, with constant leaks hitting the press every day. Alongside the leaks the President also had to contend with insubordination, e.g. Ms. Yates refusing to follow his executive orders. Regardless of the merit you see in his orders, it is logically consistent that a President who faces obstruction when trying to enact his vision would be specifically looking for loyalty among his subordinates.

</comment></comment></comment></comment></comment><comment><USER6> It's like when you meet a bad boss, you know immediatly you should keep everything in writing...

I did that in a previous internship and it helped me greatly afterwards. Though in my case it did escalate to physical threats.

</comment><comment><USER7> I'm wondering why this link has been [flagged]. Is it because it's breaking news, or not insightful?

<comment><USER5> Some time ago, during the height of the election political frenzy, dang expressed the wishes of the moderator community for a week of no politics[0]. It is possible that people enjoyed the period and are consciously trying to extend it. It is also possible that the controversial nature of Comey's remarks got this post a number of partisan flags. The most likely explanation is a little mix of everything.

[0] - [https://news.ycombinator.com/item?id=13108404](https://news.ycombinator.com/item?id=13108404)

</comment></comment><comment><USER8> One thing I like about HN is that it (usually) steers clear of politics. I hope it remains that way. There are other venues, including many technology- related sites, where there is plenty of political discussion.

<comment><USER9> "steers clear of politics"

I imagine there were many people in 1972-1973 who were also saying they hope discussions "steer clear of politics".

I know the mandate of HN (to the extent there is one) is not "politics" but on the other hand in times like these, I welcome any venue for citizens to become engaged. The stakes are very high.

<comment><USER10> >I imagine there were many people in 1972-1973 who were also saying they hope discussions "steer clear of politics".

Please don't do this. This is really just (poorly) veiled mud slinging.

</comment></comment></comment><comment><USER11> The screenplay will practically write itself.

This section seems to be a direct accusation of attempted obstruction of justice, even though it's unable to be corroborated:

> I had understood the President to be requesting that we drop any > investigation of Flynn in connection with false statements about his > conversations with the Russian ambassador in December. [...] Regardless, it > was very concerning, given the FBI's role as an independent investigative > agency.

It will be interesting to see whether any extra information is provided or deviated from during the live testimony.

</comment><comment><USER12> How is this available before his testimony? I'm confused.

<comment><USER13> Written testimony is pretty much always uploaded day before to committee websites. When the hearing starts he's going to read this verbatim, and then there will be senator questions.

<comment><USER12> That makes a lot of sense. Thanks for the answer.

</comment></comment></comment><comment><USER14> Well shit. That's gonna leave a mark...

<comment><USER15> I can't even... IANAL, but I would have written memo on those discussions as well because I would have been scared witless.

<comment><USER14> "The President then returned to the topic of Mike Flynn, saying, "He is a good guy and has been through a lot." He repeated that Flynn hadn't done anything wrong on his calls with the Russians, but had misled the Vice President. He then said, "I hope you can see your way clear to letting this go, to letting Flynn go. He is a good guy. I hope you can let this go." I replied only that "he is a good guy." (In fact, I had a positive experience dealing with Mike Flynn when he was a colleague as Director of the Defense Intelligence Agency at the beginning of my term at FBI.) I did not say I would "let this go." "

</comment></comment></comment><comment><USER16> Is there a non PDF version?

<comment><USER17> There will be a video version tomorrow.

In seriousness, here: [http://www.pbs.org/newshour/rundown/read-james-comeys- prepar...](http://www.pbs.org/newshour/rundown/read-james-comeys-prepared- statement-thursdays-senate-hearing/)

</comment></comment><comment> le-mark > He said he had nothing to do with Russia, had not been involved with hookers > in Russia, and had always assumed he was being recorded when in Russia

Boom, there it is. What kinks does Mr President indulge? That is now the question.

Edit: come on down voters, you know that's what's going to viral out of this statement: FBI Director, Trump, Russian hookers. If you don't agree, at least comment!

</comment><comment><USER18> How is this related to hackernews ? Oh yes, I get it. All people of the world are from a planet called US. No other land mass exists on earth. Honestly, the rest of us dont care. Keep politics to yourself, hackernews is not foxnews.</comment>


Your.flowingdata - An experiment in personal metrics through Twitter - <AUTHOR> http://your.flowingdata.com/

<comment><AUTHOR> Here's a post on your.flowingdata explaining it more in depth:

[http://flowingdata.com/2009/07/15/collect-data-about- yoursel...](http://flowingdata.com/2009/07/15/collect-data-about-yourself- with-twitter-your-flowingdata-is-live/)

This is exceptionally awesome. I didn't realize it until I saw it, but I'd been looking for exactly this for a very, very long time.</comment>


Daft Tunes - <AUTHOR> http://www.daftunes.com/

<comment><AUTHOR> Daftunes is an interactive sound visualizing project. During playing a song, you can enjoy some types of visualizing that synchronizes sound and lyrics, also, it shows what people are doing with the lyrics from twitter.com.

Technology: HTML5, JavaScript, Three.js</comment>


A Massively-Multiplayer Mashup of PubNub and Three.js - <AUTHOR> http://stackhack.com/

<comment><AUTHOR> The blog post explaining the entire thing is awesome.

<http://www.pubnub.com/blog/stackhack>

</comment><comment><USER2> I got a disconnection message after a few seconds and had to reconnect, but i'ts a cool demo.

I started building (and am still working on) something similar in spirit back in August: a real-time collaborative game-making tool (<http://craftstud.io/>). I started it as a Web app using SocketStream but I ended up switching to a downloadable native app for multiple reasons:

\- building a complex Web-based app UI is daunting and the result is often slow or doesn't feel very native. I hope the upcoming Web Components / Shadow DOM specs will help fix this ([http://dvcs.w3.org/hg/webcomponents/raw- file/tip/spec/shadow...](http://dvcs.w3.org/hg/webcomponents/raw- file/tip/spec/shadow/index.html)). Basically they will allow proper widget encapulsation.

\- WebSockets force a centralized approach (costs go up) and are TCP-based which make them jerky for a lot of real-time use cases. (WebRTC will probably fix some of this too)

I described in more details why & how I switched in this post: [http://forums.tigsource.com/index.php?topic=22939.msg652055#...](http://forums.tigsource.com/index.php?topic=22939.msg652055#msg652055)

<comment><USER3> Apologies for the repeated disconnects. It's a result of the authoritative server restarting. Working on a fix, but it's tricky without dropping that aspect completely.

</comment></comment><comment><USER4> Very cool. But I seem to lose connection to the server when the server-side wipe happens sometimes.</comment>