Yakyak: Electron Chat Client for Google Hangouts - <AUTHOR> https://github.com/yakyak/yakyak <comment><USER3> For those of you that use Pidgin, there's also a really great libpurple plugin that I've been using: [https://bitbucket.org/EionRobb/purple- hangouts/](https://bitbucket.org/EionRobb/purple-hangouts/) It works really well, but it doesn't have history scrollback. I'm happy when I don't have to open up my browser to chat with people.

<comment><USER4> _It works really well, but it doesn 't have history scrollback_

That caused so many arguments between me and a former girlfriend.

</comment></comment><comment><USER5> From the perspective of the author. This is fantastic work. Keep up the enthusiasm, and I hope to see more from you.

From the perspective of google, they should have done this 3 years ago. The chrome hangouts plugin is an atrocity. But at this point I've already fully abandoned google hangouts except for video chats at work. Too little, too late.

<comment><USER6> Strongly agree. I discovered YakYak a couple weeks ago and haven't looked back at the plugin or native apps. For those curious why people may not like the alternatives:

Chrome Plugins/Apps:

\- Cmd-tab doesn't work properly with apps. It will bring up my browser window instead.

\- My browser has to be open. Chrome has a large battery impact even when just sitting there. I often completely close Chrome when roaming. YakYak barely even registers

Pidgin/Adium:

\- You don't see missed messages from when you weren't logged in. I used to get in lots of fights with my girlfriend because of missed messages.

\- Can't paste images/screenshots from the clipboard. Maybe Pidgin supported this? Adium doesn't.

\- History isn't shared between multiple computers (chat history on home PC isn't available on work PC)

YakYak solves all of those problems for me. I am thrilled YakYak exists. Huge thanks to the author.

<comment><USER7> If you prefer pidgin/adium: [https://bitbucket.org/EionRobb/purple- hangouts](https://bitbucket.org/EionRobb/purple-hangouts)

Basically implements full hangouts into pidgin (connects to hangouts over "hangups" protocol rather than xmpp).

It still has some minor issues. from finch (ncurses pidgin) for example, it makes links that send people to a blank page with some hangouts.google.com/ proxy stuff going on that never gets followed. it also has weird issues with instantly marking some conversations as read. Otherwise I've been viewing it as an inplace upgrade for using xmpp on pidgin.

<comment><USER6> No Mac support? or is it just not documented?

<comment><USER7> There was a comment on the bitbucket a long while ago about "how to build for adium" but i no longer see that. :(

</comment></comment></comment></comment></comment><comment><USER8> The name of this project reminded me a silly Ukrainian joke:

— ... ("have you been in the zoo?") — ... ("yes, I saw a yak!") — І як як? ("so how was the yak?") — Як як як. ("Like a yak")

<comment><USER9> To clarify, for the Cyrillic impaired, like myself: the last sentence is basically: "yak yak yak", right?

<comment><USER8> Yes, exactly.

</comment></comment></comment><comment><USER10> I don't understand much of the criticism in this thread so far.

Yes, the app is built using web technologies and uses Electron, but AFAIS it's a fully fledged client, not just a wrapper around a website. The interface is built right there with CoffeeScript and LESS, and there is a Hangouts JS library which they use.

I'm not a big fan of using HTML/JS/CSS for everything myself, but this project looks really complete and well built. If it was built with C++ and Qt someone would come and say "why didn't you use Gtk? or <framework X>?".

Keep up the good work.

<comment><USER11> > Yes, the app is built using web technologies and uses Electron

Right. It's a chromium window wrapped around some HTML and JS, aka a website.

> AFAIS it's a fully fledged client, not just a wrapper around a website.

Nope, just a wrapper. True, it's a local webpage served on your desktop they wrote themselves, but it still has all the disadvantages that you incur when your client is just a web page in a browser.

> If it was built with C++ and Qt someone would come and say "why didn't you > use Gtk?

Electron has enormous drawbacks which C++ and Qt do not have.

<comment><USER12> > Nope, just a wrapper

Nope, its still a fully fledged client, because being a capable client is not /that/ dependant on the UI rendering method, believe it or not.

> but it still has all the disadvantages that you incur when your client is > just a web page in a browser.

No? Do you think electron exposes absolutely nothing? There is code being executed with access to the rest of your computer, this has the same access as any other language to the rest of your computer, I mean, hell even if you wanna do something weird, you could write some stuff in C (or use the pythonesque ctypes module), and then run that in turn, once again with access to the rest of your computer.

I could understand these complaints if this was an important critical thing, but its a chat client, its only job is to display text nicely with formatting, browsers are pretty good at that

<comment><USER13> >but its a chat client

That's part of the problem. Electron apps are unavoidably heavy - <USER2> binaries and 250MB-300MB+ memory consumed regardless of the task at hand. A simple "hello world" in electron without an ounce of JS or CSS will exhibit these traits.

Chat is a very simple sort of application. We've been doing it for decades now and have had functionality that approaches that of hangouts that works perfectly on machines with tens and hundreds of times less power and resources available. There's barely an excuse for such a program to consume more than 50MB of RAM, let alone 300MB+.

Some may argue that "unused RAM is wasted RAM," but I'd argue that this statement holds true only if the RAM that would be used is needed for actual functionality. If it's baseline requirement for the program to run at all, something is wrong unless the program is monstrous in nature (think AutoCAD, Maya, etc).

<comment><USER14> This is only a useful argument when comparing to an alternative that does not exhibit those traits, otherwise you are saying it's worse than nothing, which it is not.

If you want to say this is worse than X (where X is some theoretical desktop hangouts client) because it uses too much RAM, then do so, and we can compare and contrast what that RAM usage gets us in this case, and what the trade off is.

If you just want to make a case that the RAM usage is too much for _any_ chat, and if that's the baseline requirement for hangouts on the desktop because there are no other clients without those same problems (?), then you can propose a different protocol which doesn't have those restrictions.

If you aren't willing to do any of that, then all you're really doing is telling people not to use a technology because it uses a lot of RAM, on principle, regardless of whether it would be useful to them. I don't think that's a good stance to take.

<comment><USER13> >I don't think that's a good stance to take.

You're probably right, but it's also no good to sweep the shortcomings of a technology under the rug and forget about them. With Electron and similar web- wrapper technologies becoming more popular, these issues should be put out in the spotlight and consistently pointed out so that they might be addressed. Brushing them aside is a disservice to everyone, developers using Electron included.

<comment><USER14> Sure, but presumably the technology was chosen because there were trade-offs and the developers found it worth while. It's the same argument as writing a program in a dynamic language, in Java, or in C/C++ (or any other bare-metal low resource implementation, such as Rust). Complaining about a program being written in Java because it's bloated and used too much memory isn't useful in itself, if there are no better alternatives with respect to those complaints. Pointing out the alternative forces you to think about it more critically. Saying use C++ instead of Java opens you up to thinking about the choice the developer made in using Java. Perhaps it was specifically to avoid some pitfalls in C++, or because it was perceived as easier to work in. Similarly, saying to use Java instead of Python opens you up to those same considerations.

All that's really just a long way of saying, maybe the developer decided that using this system accelerated their development enough that it was worth it. It's up to the users to choose to use the program, and if they find the drawbacks of the developer's choices to be not worth it, then they can choose something else (if it exists). If nothing else exists, then maybe the reason the capability exists at this point in the first place is _because_ of those developer choices, in which case it's hard to fault them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> Like many "desktop" current apps it opens another browser that only loads one page: the "desktop" app.

It uses electron ([http://electron.atom.io/](http://electron.atom.io/)) which uses nodejs+chromium.

<comment><USER16> I am happy to see a more webapps break out of the browser. That way the apps make better use of the features of the OS.

<comment><USER15> Be aware that this is not the case of an app "breaking out of the browser":

      BrowserWindow = require('electron').BrowserWindow
      .
      .
      .
      mainWindow = new BrowserWindow {
        width: 730
        height: 590
        icon: path.join __dirname, 'icons', 'icon.png'
        show: true
        titleBarStyle: 'hidden-inset' if process.platform is 'darwin'
      }

in [https://github.com/yakyak/yakyak/blob/master/src/main.coffee](https://github.com/yakyak/yakyak/blob/master/src/main.coffee)

<comment><USER17> I would've assumed that code was implied by the whole 'It uses Electron' thing in your first comment. And it is breaking out of the browser seeing as you don't need to open a browser and type in a URL to view it.

</comment></comment></comment></comment><comment><USER18> Somehow I still can't consider a webapp in a window a 'desktop app'. I'm still waiting for QHangups to migrate to QWebEngine. ([http://github.com/xmikos/qhangups](http://github.com/xmikos/qhangups))

</comment><comment><USER19> There is also a Chrome extension for hangouts, and it can even run when Chrome isn't visible (authored by Google). Perhaps most useful is the "transparent ui" mode, where you have floating heads - see the second screenshot at [http://www.omgchrome.com/google-hangouts-chrome-app- update/](http://www.omgchrome.com/google-hangouts-chrome-app-update/) \- although for a change that is available on Windows and Linux, but not Mac! (The page also has a link to the Chrome extension.)

<comment><USER20> You mean there's a Chrome _App_ in addition to the Chrome Extension.

The problem with the Chrome App is that you still need to have Chrome running which on OS X means the Chrome dock icon, and any other downsides of having a running Chrome process (e.g. battery life impact).

</comment></comment><comment><USER21> The Windows build doesn't appear to work at all. In addition to getting file path too long issues, once I've accommodated the app by extracting on the root of my drive it never loads past a white screen.

</comment><comment><USER22> I have been using an app named Franz @ [http://meetfranz.com/](http://meetfranz.com/).

Its multi-protocol and based on Electron. Not opensource from what I know.

<comment><USER6> Franz unfortunately frames the hangouts.google.com interface which has terrible bugs when multiple people are chatting with you at the same time. If you're typing in a chat window and someone else messages you, it pops over your current chat window and the last half of your sentence types in the new window. If you switch back it'll pop back over every single time the other person messages you.

</comment></comment><comment><USER23> As a sop to those who don't consider Electron apps desktop apps, we s/Desktop/Electron/'d the title. Please let's discuss _this_ app now.

</comment><comment><USER24> Why would I use this over say Adium or similar multi-protocol app?

<comment><USER6> See my comments here: [https://news.ycombinator.com/item?id=11925103](https://news.ycombinator.com/item?id=11925103)

</comment></comment><comment><USER25> At first, I assumed that this had something to do with [http://www.yakyak.org/](http://www.yakyak.org/)

<comment><USER26> I assumed [https://www.yikyak.com/](https://www.yikyak.com/), which is a local chat app (you see messages posted from people nearby). The name sounds very similar, I'd be worried about infringing Yik Yak's trademark.

</comment></comment><comment><USER27> Other than a green bar with a white box on the left side and a grey box to the right side what am I supposed to be seeing here?

</comment><comment><USER28> Really glad to see this. Any plans on implementing voice dialing/receiving (Google Voice)?

</comment><comment><USER29> i don't know much about Hangouts -- am i connecting with/using Hangouts when i am using Gmail's chat feature?

</comment><comment><USER30> I'm kind of tired of the criticism on every post about an up built on electron. I mean, we all know the disadvantages it has with respect to native gtk or qt, but we also must remember the advantages it brings to developers to write multiplatform and VERY (not highest) performance apps in an easier way. Like it or not it is the era of websites. For people like me who always preferred desktop apps, this is good news because many website-like apps are ported in a "almost native way". Anyway, web technology like html+js+css is not that bad and it's evolving and improving fast as front-end.

<comment> yoz-y For me the biggest problem with web apps in a browser are keyboard shortcuts. E.g.: does Cmd+P print the webpage or the contents of the edited document? Electron applications solve this problem. In the end it is important to stuff the stuff requiring performance into a native module and you are set. Having worked with JNI I prefer writing Node plugins and writing interfaces in HTML5 is great compared to stuff like Gtk (and even Qt)

<comment><USER31> An author can use print stylesheets to make cmd-P work as expected. Try it out in google docs for example.

<comment> yoz-y Yes. But the shortcuts are not consistent between different web-applications. Inconsistency is he death for muscle memory. Also simple copying and pasting is not always doing what I think (e.g.: in Google docs) (it is partly my fault as I prefer safari and they did not have yet implemented all of the necessary APIs to make it work). Another advantage of Electron apps is that they do not have a concept of back and forward by default. There is no losing work in a text editor because one has unfocused the text field and pressed backspace

</comment></comment></comment></comment><comment><USER32> I am sick and tired of these wrappers falsely branded as "desktop apps". This is not a desktop app, i.e. not a native client. It's an embedded browser that comes with even more negatives than a Chrome app/panel!

Now, when we have libui-node [0], which is a Node.js wrapper around libui [1], developers, you have no excuses!

[0]: [https://www.npmjs.com/package/libui- node](https://www.npmjs.com/package/libui-node)

[1]: [https://github.com/andlabs/libui](https://github.com/andlabs/libui)

<comment><USER17> > you have no excuses!

> It is in early stage of development

> OSX should work too, but it's not tested.

> Windows has yet to be configured in build scripts, but it will be supported > in further releases.

> There are very few tests developed

> This is not yet battle-tested in a real app

All that from the official Readme [0] and you're saying there's no reason not to use it?

[0] [https://github.com/parro-it/libui-node](https://github.com/parro- it/libui-node)

<comment><USER32> This is just one of the wrappers around libui [0], which itself works fine, and is tested on all platforms. Well, it's in alpha stage, true, but so what - wait until it's stable, and then start building?

[0]: [https://github.com/andlabs/libui](https://github.com/andlabs/libui)

<comment><USER33> You're criticizing a released project for their technology choice, advocating that they should have waited to build it until some other tech was ready... Maybe take a step back and just appreciate that they built and shipped something. If you hate Electron, move on and don't use it.

<comment><USER32> Did you care to read? I meant they should not wait.

Electron uses gigabytes of RAM - it's the one reason I switched to weechat from Slack's "desktop" client!

Such "desktop" apps are a disgrace and they run way more efficiently in the browser compared to having multiple copies of browsers running in parallel.

<comment><USER33> Slack is currently using 144 MB on my Windows machine (with a lot of public channels and DMs active). Electron may give up some performance for a lower development effort, but that's the known trade-off. I think you're making it sound a little more bleak than it actually is, current performance of Electron apps is pretty good (if designed properly).

<comment><USER32> Send me a screenshot and make sure it includes virtual memory as well. I've never had any embeded browser app to use less than a GB of overall memory (in most cases, Slack uses well over 2GB).

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> I love to see JS haters going crazy every time an open source electron project has some popularity.

<comment><USER23> Please don't make the thread worse by posting snarky disses of disses. It just stirs up acrimony and adds no information, regardless of whether your point is right.

<comment><USER34> The information added is the fact that it's frequent here to see disses just because an upvoted post refers a JavaScript/Electron project. That's useful information for newcomers to the forum.

</comment></comment></comment><comment><USER35> Looks great. However, I wonder why Hangouts specifically? Am I just alien to a world where people actually use hangouts? I really really don't like it myself. Not that that is reason enough to assume all other people don't like it as well, obviously. How do people use it and why would you 'give' Google all your private chat conversations?

<comment><USER36> Let's talk about the alternatives to Hangouts:

Google's Android app has much better performance than Facebook's. (Particularly in terms of battery life. Not sure about iOS.)

IRC and XMPP are both a pain to set up. (I would love to be wrong about this. I'd run my own server if if you can find me dead-simple clients for enough platforms.)

SMS and MMS work well for phones but not for PCs.

AIM, MSN, and Yahoo, last I checked, work well for PCs but not phones. (Not sure if they still work well for PCs, pretty sure they haven't started working well for phones.)

<comment><USER37> There are many XMPP free servers, and some clients are awesome. Like conversations.im.

Setting up a server is not terribly difficult though. I bet there are some simple container solutions.

<comment><USER38> It still requires you to setup an XMPP server and proper DNS for federation.

With hangouts, if someone has a google account, there isn't much else to setup which makes things much easier for non-technical friends & family.

Hangouts has other benefits:

\- All users support the same call/video features

\- Using GCM means that battery life is better than with long polling, in my experience

\- Integration with Google Voice means you can add phone users to your video call

\- Sending images is built in

\- Single chat history that's synchronized[1]

\- Works on Linux, Windows, macOS, Android and IOS with the standard clients[2]

I've setup an XMPP server before and it wasn't that hard. I have friends/family using Hangouts and Signal messenger. Hangouts provides a pretty smooth experience and is my generally preferred way to initiate a video call with my family who runs a variety of platforms (Andriod, iOS, Windows, macOS, etc)

[1] Of course this is possible because of Google being the hub with is the grandparent's concern

[2] XMPP also has this but some chat solutions are not as widely available. Of course the web app will work anywhere you can run a modern browser. I'm thinking of the official Chrome extension and I don't know if it works in BSD or other OS's.</comment></comment></comment></comment>


Git-random: Chrome extension replaces new tab with random GitHub user's profile - <AUTHOR> https://github.com/Idnan/git-random <comment><USER2> Wouldn't this just be more annoying than useful? I mean, finding random people on GitHub is maybe 0.5% of the times I use the new tab button. Why have that happen all the time? Just to show it's possible?

It's a novel idea, just have no idea why anyone would make or install an add on based on it.

<comment><USER3> I guess it depends on how actually random it is.

Genuinely random? Well, yeah, that would be crap, assuming most of the github accounts have pretty much nothing public other than maybe a hello world or something equivalent.

Something recommended instead of actually random? That might be interesting, just maybe repositories other than users (in other profile you have to click on something to discover, while in repo just scroll for readme).

For example, I like the idea of Github explore newsletter, offered by Github. A few trending repositories every morning. Sometimes something useful, sometimes inspirational.

Unfortunately, it's not implemented well :( a lot of the repos are JS and couldn't find where to change the option, also I often get the same repos (e.g. I get this [https://github.com/FreeCodeCamp/FreeCodeCamp](https://github.com/FreeCodeCamp/FreeCodeCamp) pretty much every day for the past half a year).

<comment><USER4> >I get this [https://github.com/FreeCodeCamp/FreeCodeCamp](https://github.com/FreeCodeCamp/FreeCodeCamp) pretty much every day for the past half a year

This seems like a pretty perfect example of how outliers can make algorithms act funny -- Free Code Camp has more than _100,000_ stars on GitHub. That's well over twice as many as Angular[1] and nine times as many as CoffeeScript[2]. I mean, it's still annoying, but I'd imagine they're collecting "+1"s faster than GitHub Explore can ignore them.

[1] [https://github.com/angular/angular.js](https://github.com/angular/angular.js) [2] [https://github.com/jashkenas/coffeescript](https://github.com/jashkenas/coffeescript)

</comment></comment></comment><comment><USER5> Another case where the terms "Git" and "GitHub" are wrongly being used interchangeably.

<comment><USER6> How about GitHub-random: replaces a random file in your repository with the version from someone else's fork of it.

<comment><USER7> It should replace a file with another with the same name somewhere else, like some other main.py.

Objective-C and Matlab people will hate each other.

<comment><USER8> Prolog and Perl also.

</comment></comment></comment></comment><comment><USER9> I don't see any randomness in the implementation. It seems to be taking users in the sequence that the github users API provides.

<comment><AUTHOR> But you are not going to see the same profile again and probably you don't know them. So it's random for you. :)

<comment><USER10> "Arbitrary" is probably more consistent with the mathematical rigor some people might expect. On the other hand, little in computing is random rather than pseudo-random.

</comment></comment></comment><comment><USER11> I think this would be more interesting if it showed a random repo with more than n stars (maybe n = 10?). There are a lot of empty user profiles.

<comment><USER12> Language selection would be good too - possibly by excluding uninteresting ones rather than actively including them though. This would keep the results slightly surprising; the point is just to let you ignore languages that might otherwise be overrepresented.

See, e.g., [http://githut.info/](http://githut.info/) \- if you're not interested in one or more of Javascript, Java, Python, PHP, C, C++ or Ruby, you could easily see a lot of uninteresting projects.

</comment></comment><comment><USER13> But why?

<comment><USER14> Likely so you could see things other people have open-sourced that you might not have before. It would probably be most useful for getting ideas of what people have made rather than finding projects to contribute to, since a lot of these will be abandoned projects. (Or you could see where people contribute their time) I think seeing profiles of "active" users might be more helpful.

</comment></comment><comment><USER15> At last!</comment>


How 'big data' is changing lives - <AUTHOR> http://www.bbc.co.uk/news/technology-21535739?ocid=pan_gn_smc_all_feature_whatif_general_na

<comment><USER2> Mmm...I think there are pros and cons to Big Data. On one hand its great because it adds convenience to not only the corporations but also the lives of consumers. Although its pretty creepy that people we've never met can know a whole lot about us just through collecting data, it really takes the guessing game out of buying/selling products. With that being said Big Data allows us to only really hear about the things we might be interested in, so its a great time saver. However, this can be problematic, I feel like Big Data can make people revert back to some very nasty ways of thinking. Big Data enables us to categorize people, and when people are categorized we tend to stereotype them. Maybe it could be changing our lives in a bad way because it has the potential to make us revert back to primal ways of thinking. A sense of oneness and collective equality is lost.</comment>


Ask HN: Why are dating startups so challenging? - <AUTHOR>

<comment><USER2> Startups are challenging. Nearly all startups fail, and whether or not they succeed has very little to do with the quality of the idea, the work, or the people involved.</comment>


Show HN: Invoice-o-matic – a free online invoice tool - <AUTHOR> http://invoiceomatic.io/ <comment><USER2> While this is good from a UX perspective, don't rely on tools like this to make sure that you include all information on an invoice that you're legally required to include.

For instance, in the UK (which appears to be where this company is based), all invoices for VAT registered companies must carry their VAT Registration Number. However with this tool, even if you select to include VAT in the settings (which you must do if you're VAT registered), there is no box or prompt to include your VAT reg no.

I.E., never rely on 3rd party services to make sure you are complying with the law. It's your backside on the line if you or they get it wrong.

<comment><USER3> Most contractors I know do exactly that. These 3rd party services are called accountants.

<comment><USER2> And I'm saying its a bad idea to rely solely on those 3rd party services to know whats what. Even Accountants. Certainly here in the UK, if your accountant messes up, you're still the one liable. You then have to chase after them for recompense, while they play the "you didn't give us enough information" or "read the T&Cs, we're not liable" game. I've seen it happen too many times.

By all means bring in the professionals to advise you and do the donkey work, but educate yourself on the rules and regs. "Trust but verify" their work.

</comment></comment></comment><comment><USER4> What does this do for me that the MS Word template that comes installed with Office does not?

EDIT: I'm serious. I can think of several reasons why I would not want to use this, ranging from "I don't want to have to remember a specific URL for this one purpose" all the way up to "I don't want to be sending my invoice data over an unsecured connection to some random statup-of-the-month."

<comment><USER5> I would say over MS Word, this offers:

\- Discoverability: when I was working on my invoice template, I looked all over the web, and found a bunch of garbage, before I eventually hand-crafted something in Excel

\- Ease of use: Word templates can be annoying to fill out and format right, and they won't do the math for you. Excel will, but good luck getting it to print right every time, and heaven help you if you need more than one page.

\- Fun: When was the last time you filled out a Word template and thought, wow, that was kind of cool!

<comment><USER6> For future reference, you can insert Excel tables (the type that do math) into your Word document. The magic of COM!

</comment></comment></comment><comment><USER7> I wrote something similar to this a few years ago:

[http://billable.me](http://billable.me)

There's nothing wrong with a bit of competition and it makes me wonder if this space needs something... Why do these keep appearing?

<comment><USER8> I started my freelancing career with billable.me. Moved on to complexer tools by now, but I definitely made a few thousand euro with the help of your free tool.

Thanks!

<comment><USER9> What tools did you start using after billlableme?

<comment><USER8> I'm using InvoiceFox ([https://www.invoicefox.com/](https://www.invoicefox.com/)) these days. It's really cool because it can remember all the different clients I have so I can just click "Invoice Company X for Y" and it also does some analytics of earnings and payments discipline.

</comment></comment></comment></comment><comment><USER10> Love this lead gen strategy - offer free super simple tool to your target audience, and you get lots of opportunities to convert them to your full tool.

Adds a ton of value and shows you 'get' your customers before you engage them with your main pitch.

I also really like the personality (e.g. see [https://twitter.com/invoiceomatic](https://twitter.com/invoiceomatic)).

</comment><comment><USER11> Am I missing something, or is nobody concerned that this tool takes in all of your business' contact info and banking info? In the US, the bank name, account number, and a smidge of personally identifying info for the account holder is sufficient to create an electronic check against the account, and there is no protection for the account holder for any funds that are removed.

\- The info is being sent over http instead of https, so it can be easily sniffed along the way.

\- Even if it was encrypted, it's probably stored in their system at least briefly. If their system is compromised, so is your banking data.

\- The PDFs that are generated have to be stored on their system, at least briefly, in order to be sent out via email. They can be compromised too.

\- Who knows if the emails and PDFs are secure... probably not. That means every email relay and the networks they're on between invoiceomatic and your client are also potential places where your banking info can be leaked.

<comment><USER12> I'm doing something similar, but storing the PDFs in Redis and serving them from Openresty/Nginx. If you use the password function in Redis it would be a little harder to compromise than leaving the PDFs on the filesystem.

</comment></comment><comment><USER13> For those not familiar with FreeAgent (the makers of this (marketing) app), they are one of the UK's most successful SaaS startups. I've been fortunate enough to have been a user of their main app ([http://freeagent.com](http://freeagent.com)) for two of my businesses accounts since they started back in 2007.

The positive difference FreeAgent have made to running my businesses is on a par with that of Heroku. They saved me days (possibly weeks) of time and provided a user experience that's a genuine joy to use. FreeAgent have almost made doing my accounts fun. While they're not a replacement for having an accountant, they do have accountants on their team who have worked promptly with my accountant and I when we've had questions.

</comment><comment><USER14> _That 's all?_ I expected something like duetapp or better.. :/

Here's the same, but opensource so that you can customize to your own needs.

[http://css-tricks.com/html-invoice/](http://css-tricks.com/html-invoice/)

<comment><USER15> Note how that doesn't create a PDF.

<comment><USER16> How does one go about creating (and sending) a PDF from a web form (like Invoice-o-matic and billable.me)?

<comment><USER17> I would take POST data, and plug it into a templating system (like Django's), which is using something like LaTeX to define the basic properties of the document and populating with data and logic from Django.

Basically a mix of two markups in one file. Meh, there's probably a better way to do that.

</comment></comment></comment></comment><comment><USER18> I dont get it. How is this so much better than having a, say, rtf document template on your own computer and emailing attachments from there? Or if you want to email a pdf there's printing to e.g cute pdf.

<comment><USER19> It reduces chances of calculation mistakes as it calculates total amount for you whereas you would need to do it manually in a document template.

<comment><USER20> > _calculates total amount for you_ //

Pretty basic to do that in a LibreOffice or Word doc isn't it (certainly is in LO).

<comment><USER14> yep I agree. The premise is that one has to totally unable to create a template with your favorite Office tool. Heck you could do that in Excel and that's already an insult.

This is completely useless without a system behind.

</comment></comment></comment></comment><comment><USER21> This looks like what a good web designer with little knowledge of actual accounting requirements would do. Not what I would expect from a company specialising in accounting software. It makes me seriously doubt that they can actually fill my accounting needs, so instead of creating a lead, I can't help having doubts about their capabilities.

The first thing I would expect from such a tool is either to explicitly point out the limitations of the free offer (eg 'only valid for retail in the Netherlands!'), or, if you expect users to believe you are capable of fulfilling their invoicing needs, you have to ask which business sector and which country you are creating invoices for, and actually update the template to suit the legal requirements of the user's domain (taxes, legal mentions, display of business registration, etc).

</comment><comment><USER22> Main issue that I can see with this is compliance. As some people commented these free invoicing templates are great, but if you happen to invoice someone in Mexico or anywhere else in the world this template won't really help.

The reason why we are seeing so many startups in this space is because all major companies, such as Ariba that provide e-invoicing tools are charging suppliers for sending e-invoices, which is ridiculous.

Tradeshift (Disclaimer I do work for Tradeshift ), was one of the first startups that emerged in this space because they provide free and fully compliant e-invoicing software for small businesses. Take a look at how they launched, slightly outdated but funny [http://www.realsupplierchoice.com/](http://www.realsupplierchoice.com/)

</comment><comment><USER23> For the past 2 years I've used Freshbooks. I work full time at a company and only have 3 side customers so I use the free option. It works unbelievably well. They're even adding more accounting functions to the great functions hey have today.

</comment><comment><USER24> Very nicely done! I was about to ask how you intend to monetise this, if at all, when I saw the link to the main FreeAgent site, clicked, and thought - hey, that looks pretty useful actually...

</comment><comment><USER25> It'd be even greater if you could edit all the content, including table headers and field titles, so that users could, for instance, translate their invoices into different languages.

</comment><comment><USER5> Very cool, and more importantly, a fun take on a dry subject! It might be nice to add a preview option though. Sure I can email it to myself, but lower the barrier of use as much as possible to drive adoption.

Edit: Just got the email sent to myself. Again, very cool. Some ideas for enhancement might be allowing me to upload a small logo for the PDF, letting me save my company info, and maybe putting the 'message' at the top of the email instead of the bottom. But otherwise, bravo!

</comment><comment><USER26> Great marketing by FreeAgent. Could you invade the Australia market at some point? I like Xero, but they're a bit slow on introducing kinda-important features like quoting.

<comment><USER27> The nice thing about Xero is that if a feature is missing there is nothing stoping you from developing (and selling) it yourself.

<comment><USER26> True.

I know of at least two companies who have quote integration, but basically I only quote every few months. I don't feel like paying another monthly fee for that.

</comment></comment></comment><comment><USER28> Shameless plug: I also wrote a free site for invoicing and it has the ability to include vat reg no. One of the pages that isn't published yet is the invoice designer, which looks very similar to invoice-o-matic. Nice job by the way! The main difference on mine is the ability to save invoices, aging and reporting. [http://www.timetrackturbo.com](http://www.timetrackturbo.com)

</comment><comment><USER29> Here another one, open-source [http://www.jonathantneal.com/examples/invoice/](http://www.jonathantneal.com/examples/invoice/)

source code: [http://www.jonathantneal.com/examples/invoice/invoice.zip](http://www.jonathantneal.com/examples/invoice/invoice.zip)

</comment><comment><USER30> I was just about to comment and say "This is all well and good but I use an integrated tool called FreeAgent to manage my freelance business." and then noticed this is created by FreeAgent.

I have to say, for UK folks, that run a small business or are IT Contractors, FreeAgent is a very useful tool.

</comment><comment><USER31> I'd love to be able to specify the subtotal after VAT is applied as well, since that's often what you quote in practice and converting that to pre-VAT prices is a PITA.

VAT is also actually called BTW here, so the ability to change how VAT is called would be useful as well.

<comment><USER32> Do you quote companies, or people? When I quote companies, I never include VAT (I guess you are also Dutch). Including VAT makes you sound more expensive, and the client can deduct the VAT anyway. So quote without VAT for companies.

<comment><USER31> I was actually speaking on behalf of one of their target markets, as me repeatedly having to ask my personal trainer to correct his VAT calculations came to mind ;)

</comment></comment></comment><comment><USER33> This is cool. I'm actively looking for a invoicing tool for my SaaS app that my users can use to bill their clients. The key requirement is that that the invoicing tool easily integrates with Quickbooks. Any suggestions?

</comment><comment><USER34> Great work! Unfortunately I wouldn't be able to use it since I would need there are two taxes to calculate in my jurisdiction. Also, I rename VAT to something else, it stays VAT on the PDF?

<comment><USER35> Can you try again please, should be fixed?

</comment></comment><comment><USER36> Project link? Cool idea - Hate wasting time on small things like this; but not comfortable putting my, or a clients, information in a public site. Would love to host this myself.

</comment><comment><USER37> "Warning All machines of the future need a modern browser and javascript to be turned on."

Smartarse comments like that instantly sour me when visiting a new site.

<comment><USER38> Is it always raining where you live or something?

</comment></comment><comment><USER39> I scanned over the list once or twice, but I did not see in the currency list RMB (Renminbi, Kuai), China's main currency.

Just wanted to give you a heads up.

<comment><AUTHOR> Thanks for the heads up. We've got the spanners out and are tweaking her now.

Edit: We've had a look and there is already support for CNY. Are invoices normally specified in RMB ?

</comment></comment><comment><USER40> You got me. Saw the Invoice-o-matic. Saw the FreeAgent link. Evaluated the product. Loved it. Signed up.

</comment><comment><USER41> I use a PHP GPL app called Imperium. Meets legal requirements and provides financial reports for my CPA.

<comment><USER14> hmm, this one? [https://github.com/edoceo/imperium](https://github.com/edoceo/imperium)

Do you have a demo or screenshot?

</comment></comment><comment><USER42> I think one big hold up usually is payment for invoicing...and a payment solution that is fee-free.

<comment><USER43> The full FreeAgent app supports Paypal, GoCardless and Dwolla for direct invoice payment

</comment></comment><comment><USER44> Add the ability to upload a logo and that's the definitive winner in that field

<comment><AUTHOR> This feature is planned, hopefully will be available soon.

</comment></comment><comment><USER45> just downloaded an invoice to check the quality of the pdf, its perfect !

</comment><comment><USER46> A purchase order-o-matic would be a great addition too.

</comment><comment><USER47> Very nice CSS animation :)</comment>


Samsung Galaxy S8 May Feature an Optical Fingerprint Scanner in the Display - <AUTHOR> http://www.forbes.com/sites/amitchowdhry/2016/10/27/galaxy-s8-optical-fingerprint-recognition/#5e3b0a877cde <comment><USER2> Yay, the illusion of security!</comment>


Homejoy's Churn was 80% - <AUTHOR> http://www.forbes.com/sites/ellenhuet/2015/07/23/what-really-killed-homejoy-it-couldnt-hold-onto-its-customers/

<comment><USER2> In other news, building a business is more than tipping up an app to connect buyers to contractors.</comment>


Tell HN: (kind of an idea)Khan academy multilingual - <AUTHOR>

If there are any spanish speakers who regularly watch the Salman Khan, I had an idea.
If you were to set aside a few months and do a branch of the exact same tutorials mirroring Salman Khan
teaching style, and then submit the videos to the Khan Academy for inclusion, I bet good things would come of it.Of course it doesn't have to be all of them. Just a section like "algebra".
It can be any language but I live in California so Spanish came to mind :)
I just read the money he got from google is going toward this, but if you were to do it on your own it seems like it would be a good idea for a blog regardless <comment><USER2> If you see the FAQ on the site he mentions you can contact him if you're interested in doing translation.

You can also volunteer for his web app which is open source so he can spend less time on the website and more time making videos:

<http://code.google.com/p/khanacademy/>

</comment><comment><USER3> I think a Chinese one would be especially nice to have, since youtube (and thus the Khan academy) are blocked here. Put it on Tudou or Youku.

</comment><comment><USER4> s/Kahn/Khan/g

s/Salmon/Salman/g

For a person trying to invest a lot of time emulating Sal Khan's ideas, I find it amusing that you don't get his name right on multiple occasions.

Try again.

<comment><USER5> Hey, it's one thing to point out how to spell a guy's name and quite another to be a jerk about it.

<comment><AUTHOR> Actually I'm glad he pointed it out the way he did. I'll be less reckless from now on and take more time with my posts.</comment></comment></comment>


Optimizing HTTP/2 prioritization with BBR and tcp_notsent_lowat - <AUTHOR> https://blog.cloudflare.com/http-2-prioritization-with-nginx/ <comment><AUTHOR> Functioning HTTP/2 prioritization takes more than just a server that supports priorities. Here's a deep dive into why and how to make sure it's working for your site (and yes, it is broken more often than you might hope).</comment>


RegEx match open tags except XHTML self-contained tags - <AUTHOR> http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags

<comment><AUTHOR> 3000+ upvotes to the answer!! Amazing!</comment>


Silicon Valley's 'car people' push homeless crisis to the brink - <AUTHOR> https://nypost.com/2017/11/07/silicon-valleys-car-people-push-homeless-crisis-to-the-brink/ <comment><USER2> What-a-shit-show. The obvious answer is to move and let Silicon Valley implode.

<comment><USER3> These 9 places in America will pay you to move there: [http://www.sfgate.com/living/article/9-places-America-pay- yo...](http://www.sfgate.com/living/article/9-places-America-pay-you-to- move-12342873.php)</comment></comment>


Bee-brained - <AUTHOR> https://aeon.co/essays/inside-the-mind-of-a-bee-is-a-hive-of-sensory-activity <comment><USER2> Really interesting article. It's seeming like the more we learn about other life, the more we realize not much separates humans but a couple of thumbs and some decent dexterity.

I wonder if someday we'll reach a point where we recognize consciousness in most animals and think it was ridiculous that earlier people didn't see such an obvious fact. Just like how "common knowledge" just a few decades/years ago was that babies and crustaceans couldn't feel pain, but it'd be bizarre for anyone to claim that today.

<comment><USER3> Lots of animals have opposable thumbs: [https://animalsake.com/list-of- animals-with-opposable-thumbs](https://animalsake.com/list-of-animals-with- opposable-thumbs)

The only thing that makes the _Homo_ genus unique is control of fire.

<comment><USER4> And our genetic code. And schools and fire departments and lasers.

<comment><USER5> Exactly. And libraries, moon/Mars/deep space exploration....

It amuses me when there's an article that recognizes a similarity between humans and other species, many jump onto the "see, they're _just_ like us" meme.

What I'd be intrigued by is if there is any other species (is there _any_?) that has, century over century, via pure self- and collective-determination, advanced their state of being, achieved new capabilities, live in ways completely different than their ancestors, etc. I'm not including genetic adaptation or evolution to suit an environment -- I mean self-driven advancement. Seems we're quite unique, in that regard.

<comment><USER6> Right, that's called rationality. All other creatures are irrational, they act only on pure instinct, even if that instinct is sophisticated, such as the primates seen sharpening sticks for hunting, or the birds that drop hard shells into traffic so that cars crack it open and they get to eat what's inside, or the ways bees self-organize. Sophisticated, but still just instinct. We're the only rational creatures.

<comment><USER7> You're joking, right?

<comment><USER6> No, but I think the confusion could be in the definition of rational. We're the only creatures who have the ability to reason abstractly, which is why we're able to do many things even the most intelligent other creatures can't.

<comment><USER3> From the article:

> These bees retrieved their spatial memories entirely out of context, at a > time when there was no possibility of foraging and so no immediate need for > communication. The function is unclear. They might have 'just thought' about > these locations spontaneously during the night. Or perhaps the communication > is a strategy for consolidating their spatial memory. Scientists have since > found that a bee's memories of the previous day are strengthened when they > are exposed to elements of these memories while in deep sleep. Perhaps bees > not only think and 'talk', but dream?

> The key implication of Lindauer's discovery is that bees are capable of > 'offline thinking' about spatial locations, and of linking these locations > to a time of day, in the absence of an external trigger. That's not what > should happen if bees' memories are merely prompted by environmental > stimuli, combined with internal triggers such as hunger. Bees, then, appear > to have at least one of the principal hallmarks of consciousness: > representations of time and space.

That sounds like evidence that bees may be capable of "reason[ing] abstractly".

What can humans accomplish using solely "intelligence" that other animals can't?

All of the unique behaviors I see in humans involve use of fire-derived technology.

<comment><USER6> Isn't that enough? We can control fire. We can create technology from this one unique capability, which no other creature can. Others have the physical capability to control fire but they cannot actually do it.

<comment><USER8> >"Intentional Fire-Spreading by "Firehawk" Raptors in Northern Australia"

>"We document Indigenous Ecological Knowledge and non-Indigenous observations of intentional fire-spreading by the fire-foraging raptors Black Kite (Milvus migrans), Whistling Kite (Haliastur sphenurus), and Brown Falcon (Falco berigora) in tropical Australian savannas. Observers report both solo and cooperative attempts, often successful, to spread wildfires intentionally via single-occasion or repeated transport of burning sticks in talons or beaks. This behavior, often represented in sacred ceremonies, is widely known to local people in the Northern Territory, where we carried out ethno- ornithological research from 2011 to 2017; it was also reported to us from Western Australia and Queensland. Though Aboriginal rangers and others who deal with bushfires take into account the risks posed by raptors that cause controlled burns to jump across firebreaks, official skepticism about the reality of avian fire-spreading hampers effective planning for landscape management and restoration. Via ethno-ornithological workshops and controlled field experiments with land managers, our collaborative research aims to situate fire-spreading as an important factor in fire management and fire ecology. In a broader sense, better understanding of avian fire-spreading, both in Australia and, potentially, elsewhere, can contribute to theories about the evolution of tropical savannas and the origins of human fire use."

[http://www.bioone.org/doi/10.2993/0278-0771-37.4.700](http://www.bioone.org/doi/10.2993/0278-0771-37.4.700)

<comment><USER4> When they make a steam engine, then I'll admit to rational thought processes. Until then it could even be instinct.

<comment><USER8> How many steam engines have you made?

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Bees are one of the reasons I think the current metrics for "smartness" of AI are misguided and that we are very, very far away from AGI. Bees are capable of learning, planning, communication, prediction and at least some form of abstract reasoning. And it can operate sensibly in contexts very different from its normal environment. All of that with just 960,000 neurons. No artificial neural networks show anything close to this level of flexibility.

Does it really matter whether a bee is better at any of those tasks than "average" or "best" humans?

Clearly, once flexibility is achieved, other capabilities can be improved upon iteratively, because that's exactly what happened in nature. And yet I don't see any researchers looking at how many _different_ tasks their specific AI can accomplish, instead of how well it can accomplish a particular one.

<comment><USER10> This is a simplistic view of what is going on. That complexity is not produced by 1e6 neurons alone. Rather it is a combination of a neural net embedded in a biochemical harness. The harness interacts not only with individual bee's systems, but also with environment and other bees (via pheromones, etc.)

I do agree with you that we still have much to learn in neural network design (or more generally distributed algorithms). For example distributed systems are notoriously bad at state machines (or sequencing in general). One of the ways biological systems handle sequencing is via multiple signaling layers with different time constants (e.g. pheromones vs neurons). On the other hand deep learning systems I am familiar with just throw more parameters at the problem, obviously this scales poorly with the sequence length.

</comment></comment><comment><USER11> I'm probably not qualified to say this, but just about every example of consciousness in bees and flies that they described could just as easily be explained if they _were_ automatons.

<comment><USER12> Actually, all examples of consciousness can be explained as if we're all automatons. There's nothing we do which isn't produced (so far as we know) by physical (and therefore mechanistic) functions of the brain and body.

"Consciousness" is something that we experience, but it's not required to explain anything at all that's observed.

<comment><USER11> Fair enough; it would have been more accurate for me to say that bees don't necessarily have a conscious experience based on what we see.

</comment></comment></comment><comment><USER13> The bees are highly social, and it is possible that it is primarily this fact that "lifts" their mental power into the realm of consciousness. Being part of the socium has been proven to be critical for a human to be, well, human. What is interesting, though, is that while the social life is lifting the bee, it appears that it often moves the individual human mind in the opposite direction.

<comment><USER11> > _The bees are highly social, and it is possible that it is primarily this > fact that "lifts" their mental power into the realm of consciousness._

As far as I understand it, a theory of mind is a hard requirement for consciousness - you understand that other beings have minds, then you model them, then you turn that in on yourself, and the loop is closed and voila, you develop tools and culture and anxiety.

</comment></comment><comment><USER14> "...biologists now suggest that consciousness-like phenomena might not have evolved late in our history, as we previously thought. Rather, they could be evolutionarily ancient and have arisen in the Cambrian era, around 500 million years ago."

</comment><comment><USER15> > Yet, for the most part, Descartes did not think very highly of the inner > life of nonhuman animals. '[T]he reason why animals do not speak as we do is > not that they lack the organs but that they have no thoughts,' Descartes > wrote in a letter in 1646.

That's borderline whitewashing his thoughts and actions on the matter. He did stuff like nail his wife's dog to a board and vivisect it to prove that it couldn't "truly" feel pain.

</comment><comment> awinter-py this article could be evidence that they're zimboes

(because the author is convinced they have a real inner life)

</comment><comment><USER16> un-bee-lievable</comment>


Aaronsw: We'd set out to make something people want -- but what if they didn't want to want it? - <AUTHOR> http://www.aaronsw.com/weblog/everythinggood <comment><USER2> It's true that making something people want, if you push it too far, would cause you to make something dangerously addictive. But _very_ few startups are that successful; 99.9% of them err on the side of not making something attractive enough.

So "Make something people want" is like "Get more exercise."

Plus, if you want to try to replace this rule with one that works in that additional .1% of cases as well, it's hard to say what it should be. "Make something people should want?" Then you're on the road to fascism (if you have a lot of power) or failure (if you're just a little startup). I suspect that "Make something people want" is optimal in the same way democracy is. As Churchill said, it's the worst form of government except all the others.

<comment><USER3> Is one of the main benefits of YC advice on how to make something more attractive and/or how to find customers for whom it would be attractive?

<comment><USER2> Yes, but if you stop to think about it, what you've described is 95% of what doing a startup consists of. So saying yes to that = yes, we help people with their startups.

<comment><USER3> Are you confident that YC has the knowledge and/or connections to help a startup whose customer base is fundamentally different from those you've worked with in the past? What if the customer base has shown years of resistance to following the lead of technology early adopters? Would you be able to either penetrate such a market directly or find another market whose lead they would follow? Or, how much more likely would you be to succeed at this than a hacker who applies his/her problem-solving skills to the question and tries a few things?

<comment><USER2> Sure. Most of what we do isn't based on specific domain knowledge anyway.

</comment></comment></comment></comment></comment><comment><USER4> Social systems are a combination of:

1) The intrinsic qualities of the people there.

2) The systemic forces that drive their interaction.

Let's assume the people who visit Reddit are fixed, at least in the short term. So what can we do to alter the ways they interact so that each one leaves the site a better person than when they came?

The current design simply rewards stories that are the most popular. The problem with this is that there are basically four types of valuable stories: Insightful, interesting, informative, and funny (a la Slashdot).

In terms of what makes you a better person, the order is generally:

1\. insightful

2\. informative

3\. interesting / funny

The problem is that the stories that are interesting and funny tend to get votes very quickly, driving the insightful and informative stories off the screen. (Partly this is because you can tell if something is interesting or funny from the headline, but you need to read the whole article before deciding if something is insightful.)

The are currently subreddits based on topics, but once again it's the interesting stories in each subreddit that are pushing out the insightful ones. If we have Anna Nicole Smith on the front page, then we have whatever the science equivalent of ANS is in science and the programming equivalent of ANS in programming.

So of course people aren't coming away from Reddit as better people. Because all the stories that would make them better people are being squelched because of the systemic forces of the system. I don't even read Reddit anymore for this reason.

It's not as if it can't be fixed though. Reddit has the stories it does because they designed the systemic forces to encourage those types of stories. They could just as easily be redesigned to encourage other types of stories.

<comment><USER5> And, IMHO, in the long term (a few years) they will steadily lose viewers to sites with a better algorithm for quality (insightful and informative) if they don't make these changes.

<comment><USER6> You're making the assumption the majority of people want insightful and informative. The fact that there is a huge market for content like Survivor and Fear Factor makes me doubt this assumption.

I'd say that Reddit has more to worry about from niche copycats than another large site. Why go to Reddit for your celeb gossip and pictures of cats with dumb text when there's a site dedicated to it? It's like oh-mah-gawd-with- justin-timberlake on top awesome, without all the nerdy stuff that makes my brain hurt.

</comment></comment></comment><comment><USER7> If the reddit recommendation engine ever gets really good, I think it could actually be part of the solution, not the problem. As Aaron quotes, "people tend to be extremely similar in their vulgar and prurient and dumb interests and wildly different in their refined and aesthetic and noble interests." If we take the quote to be true, then looking at the most popular news items will always be problematic, but people will still need a way to find what interests them.

</comment><comment><USER5> In the short run, lowbrow material can be quite successful. In the long run, though, quality wins out. People still read the classics, the Simpsons is still around because it's complex and smart.

I think the same is true of companies. There is a lot more value (both morally and monetarily) in building for long-term popularity (via quality) than in brief cheap thrills.

And so, specifically, I'm betting that YouTube will soon be replaced by sites that offer higher quality (production values, intellectual material, better organized) content...the popularity "Farting in Public" will soon pass!

</comment><comment><USER8> It just takes longer to evaluate the worth of a novel than the worth of a blog post, so if you read only novels, it might be weeks before you find one you really like, but if you're reading blog posts, you're likely to find something you really like later today. For equally good blog posts and novels, the worth of the novel is less than the proportionately longer length would suggest.

</comment><comment><USER9> Here is my response as I wrote on my blog(<http://www.zaid360.com/?p=107):>

\-----

It is getting tiring to hear folks complain about the corrupting impact of web2.0 ventures on daily life. I think such arguments make for great philosophical papers. But really they have little practical meaning.

Two things:

1\. the argument that stuff like Twitter and YouTube are time wasters and thus amoral can be debated to death and debates are the last thing entrepreneurs like to get into; we would rather build more YouTubes and more Twitters

2\. if you think that Twitter and YouTube are nothing but time wasters, you are simply being short sighted.

Ya'll need to realize that many new tools in their initial stages are used for fun, and that is the stage most of the new generation of web2.0 ideas are in. It has been what less than three or four years since facebook took off, and YouTube sucked us in? And already we are hearing of YouTube 's use in catching stupid crooks, facebook as a tool to find lost wallets and Twitter's potential to help during a SF earthquake. Such waste of time, eh.

\---

</comment><comment><USER10> The challenge is in creating something with near-instant gratification while maintaining substance.

Usually it's hard enough to get a high demand hit, so we concentrate on just that. If we can achieve that part, we can then worry about not becoming a short-lived flavor du jour. It's there that we evaluate the differences between offering something people desire and providing something people value.

</comment><comment><USER11> People's hidden desires will continue to be fulfilled by a free market society. People can feel free to try to swim against the tide, but nature abhors a vacuum.

<http://en.wikipedia.org/wiki/The_Century_Of_The_Self>

</comment><comment><USER4> A topical music video about "progress":

<http://youtube.com/watch?v=zwAk6yusvFY></comment>


The molecular medley that gives bacon its rich flavour - <AUTHOR> http://www.bbc.com/future/story/20150729-the-molecular-medley-that-gives-bacon-its-rich-flavour <comment><USER2> This seasoning [1] gets remarkably close to the flavor of bacon.

Amazon lists the ingredients as

Sea Salt, Maltodextrin, Dehydranated garlic, paprika, dehydrated onion, natural flavors, natural hickory flavor, spice and less than 2% silicon dioxide (anti-caking agent), hydrolized vegetable protein, sunflower oil, yeast extract, disodium inosinate & disodium guanylate.

The last three enhance the umami, the oils carry the flavors, and then there are spices and hickory flavor. Not sure what the other natural flavors are.

[1] [http://www.jdfoods.net/products/seasonings/](http://www.jdfoods.net/products/seasonings/)

</comment><comment><USER3> Taste is one part of the bacon equation.

Flavor + crisp + sizzle + smell = bacon

<comment><AUTHOR> Don't forget the smell...</comment></comment>


Teachers unknowingly shot with plastic pellets during active shooter drills - <AUTHOR> https://www.courierpress.com/story/news/2019/03/20/ista-active-shooter-drills-went-too-far-hurt-participants/3230613002/ <comment><USER2> The panicked, reckless nonsense of "active shooter drills" is eventually going to get someone actually killed.

(Compare: the DEA agent who shot himself while talking to a classroom about gun safety:

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

[https://www.snopes.com/fact-check/safety-first/](https://www.snopes.com/fact- check/safety-first/) )

<comment><USER3> Why the hell is the gun loaded?!

<comment><USER4> Why was it even real? It's a school. If you really need to do demonstrations, get a plastic prop gun.

<comment><USER5> I think it was the best kind of demonstration how dangerous guns are, that even DEA agent managed to literally shoot himself in the foot. I only hope it was not done on purpose.

<comment><USER6> It's not as if the pistol malfunctioned. If the agent had kept his booger hook off the bang switch, everything would have been fine.

</comment></comment></comment></comment></comment><comment><USER7> "During active shooter drill, four teachers at a time were taken into a room, told to crouch down and were shot execution style with some sort of projectiles - resulting in injuries to the extent that welts appeared, and blood was drawn. ... The Indiana State Teachers Association is lobbying lawmakers to add language prohibiting teachers from being shot with any sort of ammunition to a school safety bill working its way through the Statehouse."

I feel like existing laws should cover this. If they need a new law so specific to this situation, I'd worry there's nothing covering many other situations.

Can they press charges for assault? That'd send a clear message.

<comment><USER8> This sounds like an initiative dreamed up by Dwight on The Office.

</comment></comment><comment><USER9> This whole situation is absurd, and the idea of passing a law explicitly banning intentionally injuring a teacher during a training drill is the cherry on top.

It sounds like this whole training activity is being run by idiots that don't actually know anything about or respect gun safety. Shooting someone unexpectedly with an air soft gun is already illegal. If the teachers signed a liability waiver making it okay, it's on the teachers for willingly participating in a clearly stupid and dangerous activity. If they didn't, then the injured teachers should hire a lawyer and sue...

<comment><USER10> >If the teachers signed a liability waiver making it okay, it's on the teachers for willingly participating in a clearly stupid and dangerous activity. If they didn't, then the injured teachers should hire a lawyer and sue...

I have to disagree here. Signing a waiver isn't iron-clad in court. You can't just sign a waiver saying it's OK for someone to shoot you, or do anything else illegal to you. Unless these teachers were clearly warned that this would injure them and draw blood, they have good cause to sue, and even if they were warned that way, they can still sue, arguing they were afraid for their jobs.

I'd like to see these teachers sue the bejesus out of this school district. It's absolutely incredible that anyone thought this was a good idea, and if no one goes to jail for it, the local government clearly deserves to pay dearly for it.

</comment></comment><comment><USER11> You know, there are countries where this kind of thing doesn't happen. Like, all of them. Know how many such drills we had in Canada? Zero. Probably because most guns are illegal so we don't need them.

That the solution isn't gun control but instead making it illegal to shoot teachers unexpectedly with airsoft rifles is evidence of how insanely beyond the pail US gun policy and the whole discourse has become. New Zealand had a shooting, six days later, gun control. That's how you solve the problem. Anything else is just rearranging the deck chairs on the Hindenburg.

<comment><USER12> Er, no "most guns are illegal" is not at all true in Canada. Canada's gun laws are arguably looser than some US states. Plenty of "assault weapons" are non restricted rifles in Canada: [https://tillsonburggunshop.com/Firearms-guns- Rifles-Shotgun-...](https://tillsonburggunshop.com/Firearms-guns-Rifles- Shotgun-pistol-handgun-Air-gun/Non-Restricted-Black-Guns)

You just need a PAL to buy them. No background check at the time of sale, and no registration.

By comparison, here in California owning most of these guns would get you a felony punishable by years in prison.

<comment><USER13> AFAIK If you have PAL license, RCMP runs background checks on you daily and revoke the license as soon as anything comes up.

<comment><USER14> That kind of background checking would not have stopped many of the mass shooters.

<comment><USER13> I was replying to the comment implying that you can buy rifle without background check. To be fair no amount of government restrictions and bans will stop the mass shooter who really wants to become one. There are a lot of illegal guns getting to Canada from US.

<comment><USER12> There is no background check at the time of sale for non restricted rifles or shotguns. This is compares to restricted firearms (handguns and some types of rifles) that do require background checks at the time of sale. The "background check every day" statement is somewhat correct in that someone's PAL is invalidated if the commit a crime, or get divorced. As far as I know that's what's referred to by daily background checks. I am almost certain that background checks are not actually peformed every day, that would be a massive amount of labor.

This in contrast to California where all firearms sales other than black powder muzzle loader have backgry checks run every time someone buys them.

</comment></comment></comment></comment></comment></comment><comment><USER15> I'm from Europe. I mostly clicked on the link to find out what a shooter drill is. I'm baffled by the article and the comments in this thread. Having to have drills for school shootings is apparently considered a normal part of life in the US.

<comment><USER16> It's not. I don't know anyone that's ever been through an active shooter drill. The closest I know of is the college my wife taught at had an optional hour long seminar for teachers.

<comment><USER17> Nearly 95 percent of public schools had lockdown drills as of 2015-16.[1] I don't know anyone who's been through one either, but I'm an adult, and our generation just missed the cutoff.

[1] [https://nces.ed.gov/pubs2017/2017122.pdf](https://nces.ed.gov/pubs2017/2017122.pdf), quoted in [https://medium.com/s/youthnow/the-response-to-school- shootin...](https://medium.com/s/youthnow/the-response-to-school-shootings- may-be-a-misfire-active-shooter-drills-teachers-students-6acb56418062).

<comment><USER18> I went through the public school system and I remember having lockdown drills from 1997 onward. Teachers just locked the doors and continued teaching until the all clear was announced and they unlocked the door.

In 2014 I was working IT for a private high school which had an active shooter drill on a yearly basis. I was told they started it two years prior because a student came onto campus with a handgun.

Both in southern California.

</comment></comment></comment></comment><comment><USER6> I've had occasion to participate in an active shooter exercise using simunitions. It was for police and EMS to practice their response. All participants were given safety gear, informed of the risks, and signed a waiver. I can't imagine not being given the proper safety gear and not being briefed about the exercise beforehand.

</comment><comment><USER19> >This is what happens if you just cower and do nothing

You sure? Because even when I was in the military, they trained us to respond to security events by locking our area down rather than running into the fight unless we were designated responders. Sounds to me like the cops just wanted to fire their fancy training pellet guns at someone.

<comment><USER20> You don't have to run into the fight, but your odds of survival in a shooting are often better if you run away and try to escape.

<comment><USER19> Good point, but my point was the message wasn't clear, it just seemed like cruelty from the cops.

</comment></comment></comment><comment><USER21> What's the point of these drills? It's not like the cops are going to go into a school with an active shooter and stop him. They'll just wait outside while the children get killed and hope the shooter kills himself like in every other school shooting. Or maybe they like to practice murdering teachers and other innocent people since they think it's part of their job? Seems pretty insane the school would let them carry out their sick fantasies this way.

</comment><comment><USER22> Low pay, rowdy students... what else can we do to make teacher's lives miserable. I know, let's shot them with things.

</comment><comment><USER23> Title is misleading - the teachers knew as soon as they were shot.

</comment><comment><USER24> Why not have school-wide martial arts training or something instead? Empower the populace, and discourage people from attempting it in the first place. "An ounce of prevention is worth more than a pound of cure" as they say...

These shelter in place drills are addressing a symptom, and not the cause of violence.

<comment><USER10> Martial arts are pretty useless when some nut has an assault rifle and other firearms at hand. This isn't a Hollywood movie.

<comment><USER25> A Hollywood caricature of martial arts might be useless. But my understanding of some martial arts is that they emphasize keeping a cool head, awareness of surroundings, deescalation and evasion over violent confrontation. Being even somewhat competent in those skills could prove valuable in an active shooter situation.

<comment><USER24> Exactly. The hardest part about martial arts in my opinion is the state of mind necessary to react to a situation appropriately.

</comment></comment></comment></comment><comment><USER26> That guy in the vest in the top image from Sioux Falls looks pretty chipper.

</comment><comment><USER27> Controversial opinion from someone with extensive experience with assault weapon violence.

GOOD

The current "shelter in place" model of active shooter drills KILLS CHILDREN. In combat we had another name for "shelter in place"... "die in place".

People must be taught to fight back or flee. They must because it is not instinctive. Most of us were raised in relatively peaceful societies and have a school yard/Hollywood understanding of violence.

For those who haven't seen the Christchurch video, the killer was ALMOST taken out by one lone person who rushed him while his back was turned. Sadly, this brave soul was alone in his efforts and perished. He came literally within inches of getting the drop on the shooter. Had there been a second brave soul with him the shooting could have ended with far less death.

Two unarmed adults in close quarters can absolutely disarm one person. In a fight, two are four times as effective as one.

If someone is attacking you there are two options, run or fight. Hiding in a room with no exits is to wait for death, as evidenced by every eyewitness account we've ever heard on the news, "I heard the shooting in the other room, I knew we were next".

From a tactical point of view a school/church shooting is a de facto "raid". There are principles of conducting and defending against a raid. The active shooter drills I've seen are in total ignorance of these principles.

<comment><USER5> What if you have a gun on you and no place to escape, do you attack right away, or wait for the shooter to come in and take him by surprise?

<comment><USER27> "Violence of action" is the military version of our beloved "Zero to One". What you lack in skill you make up for in aggression.

<comment><USER14> This applies most in the situation where there is no escape and no one other than the shooter has firearms. If one is able to use tactics to even or upend the odds, then do that. Aggression is just the tactic of last resort.</comment></comment></comment></comment>


Redisql (an extension of Redis that supports a large subset of SQL) - <AUTHOR> http://jaksprats.wordpress.com/2010/09/28/introducing-redisql-the-lightning-fast-polyglot/

<comment><USER2> I am the author of Redisql and I wrote a blog post today explaining the concepts behind Redisql (a RDBMS on top of the NOSQL datastore redis) [http://jaksprats.wordpress.com/2010/09/28/introducing- redisq...](http://jaksprats.wordpress.com/2010/09/28/introducing-redisql-the- lightning-fast-polyglot/) The original idea was to have a single roof to house both relational data and redis data and both types of data would exhibit similar lookup/insert latencies under similar concurrency levels. And then I added simple commands to convert redis data into relation tables and vice versa, and I made many memory optimisations, etc... the result hopes to be the complete datastore solution for applications that require the fastest data lookups/inserts possible</comment>


We have always been at war with Amazon [audio] - <AUTHOR> https://stratechery.com/2016/podcast-episode-081-we-have-always-been-at-war-with-amazon/ <comment><USER2> 3 points and #9 on the front page.... moderators must be behind this.

<comment><USER3> Sunday is a slow day buddy</comment></comment>


CELT: Next-generation low-latency audio codec from xiph.org - <AUTHOR> http://people.xiph.org/~xiphmont/demo/celt/demo.html

<comment><USER2> Having listened to the 64bit comparisons of the audio on the page (that's a particularly cruel sample set; is it a common one?):

Wow. The worst audio chunks on CELT are significantly better than the worst on the other codecs. Overall, I hear a bit of a loss on the low-end of wider sounds (the one that pops out to my ear is the entry starting at 0:37), but for such an _incredible_ improvement in the high ranges that's a wonderful price to pay. Still a decent bit of that "anti-pre-echo", which I _despise_ , but generally less than the others.

All in all: an epic improvement over the other samples, especially when taken across the board. All the other encoders had _huge_ distortion on one or more of the sound bites (especially the third, 0:22); CELT had very little, even at its worst. Phenomenal work.

/listens to 32kbps. shall update!

edit: yep, it hurts most on that 0:37 entry. Unfortunately, I put it as _noticeably_ worse than all but the AAC-LC (but that one's horrible in _everything_ ) at 32kbps. It does handle the voice at the end very well, though. That, with the latency, means it'd probably be great for voice use.

/tries 48; maybe it survives at the middle?

edit2: yeah, about middle. Almost catches up to the HE-AAC entries, maybe passes Vorbis.

Voice-only or required-low-latency aside (both important qualities), I think I'm not going to use or recommend this for sub-64kbps, though it could of course improve yet. Vorbis and HE-AACs beat it. At 64 though, maybe above, or for respectable quality telepresence, it sounds like a clear winner.

<comment><USER3> FWIW, mono at32kbit/sec is fairly close to stereo at 64. (Of course, there is some joint coding gain from stereo— but stereo's wost case is just as bad as 2x mono and it's the often the worst cases that limit the quality).

For example, mono speech at 32kbit/sec: <https://people.xiph.org/~greg/celt/spec.orig.wav> <https://people.xiph.org/~greg/celt/spec.MP3.wav> <https://people.xiph.org/~greg/celt/spec.vorbis.wav> <https://people.xiph.org/~greg/celt/spec.CELT.wav>

The SILK+CELT hybrid does better still, but even CELT alone is still fairly useful at lower rates.

</comment></comment><comment><USER4> Great work and great documentation - as usual from Xiph. CELT looks like a big step forward for real time internet audio. Sub-10ms latency is very impressive even if the quality is somewhat compromised - for many purposes it will be sufficient, and where it's not, lossless recordings can be transferred later.

The only thing that I wish they would change is the name 'Ogg' for their container format. It sounds like a character in a bad children's movie and I always feel slightly embarrassed introducing it into conversation.

<comment><USER5> <http://www.amazon.com/Secret-World-OG/dp/B000MX7UEY>

>_>

<comment><USER4> o_O

</comment></comment></comment><comment><USER6> Mumble (<http://mumble.sourceforge.net/>) uses CELT, and it's amazing - when I first started using it, I was a little unsettled, because I could hear inflections and intonations in others' voices that I didn't realize were being stripped out by Speex.

CELT is an amazing product, and Mumble has built an amazing product on top of it. I'm pushing very hard to try to help Mumble topple Ventrilo/Skype, at least for gamers. I'm really excited to see how CELT has grown and changed over the last couple of years, and it's just getting better.

(Full disclosure: I run a Mumble hosting service. But that's mostly because I love the product so much.)

</comment><comment><USER2> > _low-bitrate performance ('sweet spot' >= 32kbps for 48kHz stereo)_

That seems to be contradictory. or is it just me? It seems to imply the "sweet spot" (which I'm interpreting as the minimum good-sounding point) exists only at or _above_ 32kbps; which is low _ish_ , but not all _that_ low. And why the ">"? Surely an upper bound is more useful to people interested in low bitrates, not a _lower_ bound.

> _flexible streaming with the ability to change most codec parameters mid- > stream_

Fantastic news. As to the rest... I'd _love_ to understand all that. I'll have to read through with Wikipedia some time.

<comment><USER4> Sweet spot is more 'best bang for the buck' - you can go lower than that, but you'll have to sacrifice either latency or frequency resolution. Have a look at the comparison chart for some context: <http://www.celt- codec.org/comparison/>

32kbps is not the lowest possible, obviously, but it's still very very low. Like that's near-realtime encoding at quite high quality at a bitrate low enough to go over an old modem. Normal uncompressed 16-bit 48khz stereo audio (the most popular yardstick since the establishment of DVD) is 1536 kbps. Remember that's kiloBITS per second, and two channels of 16-bit audio are taking up 32 bits per sample. At 32 kbps without any compression you'd be limited to a 1 khz sample rate which about as smooth as a cheesegrater. Compressing audio in almost real time by a factor of 48 and still having it sound this good is astonishing, trust me. If you didn't do so already, find the picture of the spectrogram and look at the uncompressed and mp3 plots for a while. Then look at how much more faith the CELT codec is to the source material. Their insight about maintaining energy of each coding band at unity is _extremely_ impressive, one of the cleverest things I've seen in DSP since perceptual coding (which is what mp3 does).

If digital signal processing and the like stimulates your intellectual curiosity then I urge you to learn more about it - it's a really interesting and very useful field of study, with all sorts of interesting applications and lots of territory still unexplored. The Scientist's and Engineer's Guide to DSP is a fairly basic introductory text, but has two massive advantages of all its competitors: it is available for free at the author's website, and it is extremely well written. Other books can tell you what you need to know. The DSP guide tells you why you need to know, and why the fundamental algorithms are so elegant. <http://www.dspguide.com/>

<comment><USER2> Comparing it to uncompressed audio is a bit of a red herring. MP3s can easily do 32kbps - they sound like crap from a musical standpoint, but they do it just fine. Heck, mp3s at 8kbps still sound significantly better than my cell phone - you could run _7_ audio streams at the same time on dial-up with that quality. Similarly, uncompressed video is _huge_ , when a _high_ -quality h.264 pass will look almost identical with _massive_ size savings. From the several charts, it looks like CELT could be a very large improvement over the encoders they compared against (I'm assuming a relevant sampling), especially where speed is concerned, and I'll definitely poke at it and see what I think.

I very much liked the spectrograms, that looks to be a _massive_ improvement. I've got to test it on my good pair of headphones to see just what it sounds like.

Nearly everything stimulates my intellectual curiosity; this is high-ish on my list, but that might mean years yet. Many thanks for the suggestions on info though, I'll most certainly keep that handy!

<comment><USER3> Exactly.

CELT at 2.5kbit/sec: [http://myrandomnode.dyndns.org:8080/~gmaxwell/celt/16k_60ms_...](http://myrandomnode.dyndns.org:8080/~gmaxwell/celt/16k_60ms_20-2.wav)

So sure, CELT can be coerced to run at obnoxiously low rates— it's far more flexible than MP3 in this regard, every frame size which is an integer number of bytes greater than 8 or so should more or less work (and it should use every bit effectively).

This doesn't mean that it'll actually be useful at very low rates. 32kbps is about the limit for 20ms frames where things really start to come apart and everything starts sounding pretty poor.

The CELT _decoder_ is more computationally complex than you might guess. We started the design in 2007, and the decoder is pretty comparable to MP3 or Vorbis decoding (though requiring a _lot_ less memory). Using substantially less CPU than that, if there was quality to be gained would have been a sin. So although the overall design is nice and simple— we use a number of 'more optimal' techniques which are decent CPU sinks. E.g. Everything is range coded (so we're not constrained to coding things with probabilities of the 1/2^n form) and we use high dimensionality vector quantization.

The encoder, however, doesn't need a psy-model at all nor does the current one have much of a psy-model (it has some simple hacks for a couple psycho- acoustic tweaks, but nothing too complex) Reasonable perceptual performance is implicit in the format. This means that a good CELT encoder can be much faster than, say, a good vorbis encoder.

On the subject of DSP stimulating curiosity, checkout <http://www.xiph.org/video/>

<comment><USER7> Where/when can I get a library for this?

<comment><USER4> <http://www.celt-codec.org/downloads/>

</comment></comment></comment></comment></comment></comment><comment><USER8> <http://www.ekiga.org/> (ekiga / ubuntu maverick) comes with support for CELT, among others (Speex,etc), although I didn't compare them for quality.</comment>


The F-35 just became 25% vulnerable - <AUTHOR> http://nation.time.com/2013/01/11/hot-stuff-the-f-35-just-became-25-more-vulnerable/

<comment><USER2> I seem to can't find where the proof, or a official testing authority report, says that the vulnebility is "25%" more, compared to original design? DOT&E extract doesn't mentions that.</comment>


Almost half don't change security strategy following a cyber attack - <AUTHOR> https://www.cbronline.com/news/almost-half-dont-change-security-strategy-following-cyber-attack <comment><USER2> A better title: "Security considered (and probably being) not that important for business for almost half of companies".</comment>


LinkedIn Founder:"All these concerns about privacy tend to be old people issues" - <AUTHOR> http://www.youtube.com/watch?v=pexGCUPlUeA&feature=player_detailpage#t=780s

<comment><USER2> It is at 13 minutes mark. Refresh browser tab and YouTube should take you to correct position.

</comment><comment><USER3> Could you be more accurate? This video is almost 2 hours long, at which minute does he talk?

</comment><comment><USER4> Very telling.</comment>