Facebook at Work is launching next month - <AUTHOR> https://techcrunch.com/2016/09/27/facebook-for-work/ <comment><USER2> Would you trust Facebook with your internal corporate communications and by extension the company's innermost secrets?

Good luck to Facebook in getting traction with corporate customers with the most atrocious privacy record of just about any company.

<comment><USER3> Would you trust Facebook with your personal communications and by extension yours and of your family innermost secrets?

Good luck to Facebook in getting traction with techy customers with the most atrocious privacy record of just about any tech passionate.

/s

Just look at any facebook thread and see how many HN readers use it.

The stasi wasn't enough of a lesson.

<comment><USER4> If you work for a big company then you may already be a member of a Facebook "network" of company employees based on email addresses. (I was joined to one.) Seems to work in much the same way as college addresses.

I've also seen company employees start their own closed, private Facebook groups for work purposes because the in-house services were terrible. (I was joined to one.) It's easier than getting a group of people to sign up for a separate third-party service. (Tried that. Didn't work.)

I assume Facebook noticed this phenomenon and decided to improve on it, and exploit it.

I don't expect most users see a problem because they already trust Facebook with their personal information. And I wouldn't be surprised if users trust it more than Google, which now stands for surveillance-based advertising.

<comment><USER5> > I've also seen company employees start their own closed, private Facebook > groups for work purposes

This would probably get them fired in certain companies with responsible information policies.

> I don't expect most users see a problem because they already trust Facebook > with their personal information.

Which is wrong as naive in the first place.

> And I wouldn't be surprised if users trust it more than Google, which now > stands for surveillance-based advertising.

Facebook stands for social manipulation advertising. Pick your poison.

<comment><USER4> _> This would probably get them fired in certain companies with responsible information policies._

Sure, but if people followed the rules, almost no work would get done. (In the UK, "working to rule" is a form of industrial action that's only a little short of a strike.)

 _> Which is wrong as naive in the first place._

Yeah, more than 1.6 billion people are naive and wrong.

 _> Facebook stands for social manipulation advertising. Pick your poison._

How does that work, then?

Otherwise, there's an ethical difference between sharing information voluntarily, for their own benefit -- which people do on Facebook -- and Google's clandestine tracking, which is for Google's benefit.

</comment></comment></comment></comment></comment><comment><USER6> Most companies don't have a code repository or file bug reports, yet almost every comment seems to talk about this.

Most companies need a platform where employees are registered, can communicate and can be looked up, and preferably a platform that employees also use.

Facebook has shown itself to be a platform people like to use, a platform that works well on desktop and mobile, can do users, groups, schedules etc.

I can see why it might be good for a lot of companies that have an unused custom Intranet with an empty bulletin board.

</comment><comment><AUTHOR> This seems particularly well suited to non-IT-development workflows, like those in marketing and sales agencies, various organizations that already intensively utilize FB for their businesses by further providing a seamless integration between workplace activities and public/customer related ones.

What about webhooks, e.g. for CI and Github related processes, or about bot support?

<comment><USER5> > like those in marketing and sales agencies, various organizations that > already intensively utilize FB for their businesses

So basically same bullshit selling industry related to ads as Facebook.

</comment></comment><comment><USER7> _" Facebook will just have to conquer the stigma that it's for fooling around, not getting work done."_

This. After offering people, at work, trillions of hours of entertainment, now its going to help make people more productive.

But it will have a huge brand problem. _Facebook_ has become an adjective for people slacking it out. Example, an irritated spouse "you spent the entire day on Facebook". Many IT companies' firewalls has Facebook at the top of the banned sites, during office hours.

All said, it surely can do it. But if it succeeds, it will be a bit like a porn site also deciding to become a MOOC and succeeding at it.

</comment><comment><USER8> Facebook might be eyeing the same crowd which is using Yammer or saleforce's chatter offering.I think if they start with a free tier like yammer and then go from there,lot of people might start using it as people are already familiar with Facebook.In my company i don't see people using yammer although it is heavily publicized. I think facebook has a better chance of becoming social network for work than yammer or chatter!

</comment><comment><USER9> Is Facebook trying to be slack now?

<comment><USER10> Facebook has been working on this since before June 2014. It has been in a private beta for 2 years. [https://techcrunch.com/2014/06/25/facebook-at- work/](https://techcrunch.com/2014/06/25/facebook-at-work/)

</comment></comment><comment><USER11> Facebook feels a bit lost, rushing from one opportunity to the next. Remember the Facebook Messenger with bot api beginning of the year? Zuck created a big buzz and promised a soon to come bot marketplace, which haven't launched yet.

And now FB for work? FB's DNA is about anything but work.

<comment><USER12> Most organizations would rather keep staff away from Facebook as long as they're not in the social media marketing enclave. The temptation of drifting unto your personal Facebook account instead of Facebook for work makes this a laughable proposition but there's always a customer for every product no matter how shitty it is.

</comment></comment><comment><USER13> Best idea ever. Lets use Facebook for our business conversations and pay them for that service as a bonus. If you bring this up as an option in a business conversation, i don't want to work with you.

<comment><USER14> Because you... don't like Facebook? Ok. But I don't get your hostility.

<comment><USER13> They will have access to your business conversations. You have literally someone from facebook taking notes.

<comment><USER14> Do you feel that way about Gmail too? I respect the opinion but it's definitely in the minority.

The TOS will no doubt prevent them from using any proprietary data or "note taking"

</comment></comment></comment></comment><comment><USER15> "It should find onboarding users easier than many SaaS tools since people will already have a login, password, and know how to use it. "

Does that mean employees sign into Facebook at Work with their personal Facebook credentials?

That doesn't seem to make sense, but then why/how is the Facebook registration process better?

<comment><USER16> No, it uses your work credentials and your account is created for you.

We have it at work and I was skeptical at first but it's not that bad. There is no concept of friends but you can follow specific people. Mainly it's based on groups so in the end it's like a stripped down Facebook that acts as a glorified front-end for mailing-lists.

I don't know how much they (will?) charge by user though.

<comment><USER15> If "corporate" or someone in the company sets accounts up ahead of time, how does Facebook have any advantage in this space? That same process would be possible with any software...

</comment></comment></comment><comment><USER17> I thought there is already a 'facebook at work' named Yammer. Not that I found it useful in small start-ups but it makes sense in large organisations.

<comment><USER18> Not just Yammer but Sharepoint, Sway and Delve. For companies that are bought into the whole Office 365 thing, there's actually a pretty comprehensive 'company social network' offering.

</comment></comment><comment><USER19> I don't really see a point, partly because social and work don't mix in my dictionary, partly because I consider Enterprise Communication a solved problem. What is the incentive to move away from e.g. an already integrated Atlassian stack?

Maybe it can be an option for new companies? It is hard to tell without the pricing information.

<comment><USER20> Exactly, social and work don't mix. Most want them kept well apart. No way I'm letting FB link my work with my social lives and no way I'd trust them not to.

There is always the risk of them buying LinkedIn but people aren't going to make it easy.

<comment><USER21> "You just create a new Facebook at Work account to connect with coworkers. This account is separate from your personal Facebook but works in similar ways." ([https://work.fb.com](https://work.fb.com))

<comment><USER22> Riiiiight.

<comment><USER23> They _absolutely_ will not mix personal and work Facebooks.

Plenty of companies have blocked [www|m].facebook.com at the firewall, for reasons of productivity and data protection. Facebook-the-company will not jeopardise the chances of adoption of this product by doing anything that will make work.facebook.com fall foul of a similar fate.

Pity they didn't just call it Workbook, then we wouldn't have had all this confusion. Or Workface :)

<comment><USER22> Mix? No. Share? Of course they will.

</comment></comment></comment></comment></comment></comment><comment><USER24> They are going to fail terrible.</comment>


The Emergent Features of JuliaLang: Part I - <AUTHOR> https://invenia.github.io/blog/2019/10/30/julialang-features-part-1/ <comment><USER2> Cool things you probably should never do in Julia</comment>


Pycoder's Weekly Issue #43 - <AUTHOR> http://us4.campaign-archive1.com/?u=9735795484d2e4c204da82a29&id=f5000172aa

<comment><USER2> I love this news letter. Of the 4 news letters I subscribe to this is the one I actually read.

Every week there are at least a few articles/projects I take a closer look at. They do a great job at curating.

Thanks for the hard work!

<comment><USER3> I second this. Every week I look forward to Friday's release... Great job guys!</comment></comment>


Git for Windows Patched for CVE-2016-0777 and CVE-2016-0778 - <AUTHOR> https://git-for-windows.github.io/ <comment><AUTHOR> Github posted the release for the windows compiled binary with an updated OpenSSH to 7.1p2.</comment>


Roboticst at OSU uses performing arts to make robots more social - <AUTHOR> https://www.oregonlive.com/silicon-forest/index.ssf/2018/08/oregon_state_professor_working.html <comment><USER2> This is now a trend. The goal of humanizing robots and AI is really interesting, and I think is merited as we nudge ourselves toward more ubiquitous human-machine interaction.

Comedian: [https://www.nytimes.com/2018/08/08/arts/ai-comedy- artificial...](https://www.nytimes.com/2018/08/08/arts/ai-comedy-artificial- intelligence-piotr-mirowski.html)

Improv:[https://www.ualberta.ca/newtrail/featurestories/2018/may/hav...](https://www.ualberta.ca/newtrail/featurestories/2018/may/have- you-heard-the-one-about-the-robot-comedian)

Sophia:[https://en.m.wikipedia.org/wiki/Sophia_(robot)](https://en.m.wikipedia.org/wiki/Sophia_\(robot\))

</comment><comment><USER3> I realized recently that although getting robots to understand humor is a hard problem, getting robots to develop stand-up comedy is tractable.

The reason is stand-up comedians have to develop their act empirically. They try out material that they think might be funny, and they try it out in front of an audience. They go through a process of constant trial and error. This is in contrast to what most audiences think happens.

<comment><USER4> Yes but being a human they already have a pretty good idea what might be funny for the audience they want to perfmorm for.

So basically I think a computer would need a lot more trial and error than the human does, and I'm not sure a good way to allow for that magnitude of trial and error without having some other computer that has a sense of humor be the judge.

<comment><USER3> No, you'd want to bootstrap the process with some kind of machine learning to categorize humor and non-humor. It would have poor accuracy, no doubt, but it would be better than random generation.

I agree that it would be less efficient than in humans but with learning it might be able to converge on a set of strategies, possibly "cheats" that are likely to produce laughs.

<comment><USER5> You may converge on an "air-humping cheetah" style cheat, like repeating the word "Poop!" over and over...

<comment><USER6> Are you suggesting that catch phrases _aren 't_ hilarious? YOWZA! [looks at camera, smiles]

</comment></comment></comment></comment></comment><comment><USER7> First time seeing the 'inaccessible if coming from the EU' message. Wonder if there are any stats out there to break down how many non-EU websites are opting to stop the traffic vs complying with the GDPR.

<comment><AUTHOR> And, worst, they use the 451 status when it's them who don't want to comply with a privacy protection law.

Do they think anyone will believe the EU is censoring US websites?

<comment><USER7> interesting that if you believe "David" giving an interview to the Sun, there could be fines even if websites prevent access to the EU citizens

[https://www.thesun.co.uk/tech/6375884/gdpr-fines-websites- bl...](https://www.thesun.co.uk/tech/6375884/gdpr-fines-websites-blocked- businesses-law-legal/)

<comment><AUTHOR> I think that, if real, which I doubt, is a hard to enforce rule and an unfair one. If you are unwilling to protect the privacy of your users, you can still serve your website to people who live in countries that don't mandate such protections.

My problem is with the misuse of a political statement. The EU is not censoring anyone. It's protecting its residents. Shame on governments that don't do the same.

<comment><USER7> Did a bit more looking into this and it seems to be the case. The issue is with organisations that have historically captured info about EU citizens which even if they stopped access to new EU users, still makes them need to comply with GDPR. So preventing access might also need to be supported by removing any EU user data from your system. Discussed in detail below.

[https://www.econsultancy.com/blog/70065-gdpr-which- websites-...](https://www.econsultancy.com/blog/70065-gdpr-which-websites-are- blocking-visitors-from-the-eu-2)

</comment></comment></comment></comment></comment><comment><USER8> EU-accessible version, I assume it's roughly equivalent to the submitted link: [https://www.oregonlive.com/silicon- forest/index.ssf/2018/08/...](https://www.oregonlive.com/silicon- forest/index.ssf/2018/08/oregon_state_professor_working.html).

<comment><USER9> Thanks, we changed to that from [https://www.gazettetimes.com/news/local/roboticst-at-osu- use...](https://www.gazettetimes.com/news/local/roboticst-at-osu-uses- performing-arts-to-make-robots- more/article_5a3c7dd6-3af4-5a92-8dda-f016a0dd425d.html).

</comment></comment><comment><USER10> "OSU" is not descriptive.

Oklahoma State University

Oregon State University

Ohio State University

<comment><USER11> That headline appeared in a local newspaper in Corvallis, the town where Oregon State University is located. In that context it's pretty clear, but agreed that on HN it's very ambiguous.

As an Oregon State University graduate I assumed it was one of the other OSUs until I saw the domain.

</comment></comment><comment><USER12> Inaccessible in the EU

</comment><comment><USER13> Not accessable in the EU.

</comment><comment><USER14> "ANSWER A SURVEY QUESTION TO CONTINUE READING THIS CONTENT" Really?</comment>


Launch HN: Raycast (YC W20) – CLI-inspired desktop app for non-coding tasks - <AUTHOR> Hey,
Thomas and Petr here from Raycast (https://www.raycast.com). We are building a command-line inspired native app to save developers time on non-coding tasks, such as managing active sprints in Jira, sorting out notifications in GitHub, or checking metrics in Amplitude.
Both of us are software engineers and we noticed that we were spending less time coding and more time managing the software development process. We had to keep track of bug reports, manage sprints, comment on pull requests, release new versions and many more things that eat up a big portion of our time. All of those tasks are spread across web tools that aren't optimized for power users. When we used these tools every day, loading times became annoying, animations turned into pain and clicking 10 buttons for the simplest things didn't feel right.
We built an internal productivity tool that addresses this issues in our previous jobs at Facebook as a side project. It was a desktop app for macOS that sits in the menu bar and connects to the internal issue tracker. The app displays your open issues and has a global shortcut to create a new one. The tool allowed us to replace the slow web app for the majority of our work and saved us time. When other engineers enjoyed the simplicity and speed of the tool, we realized that such an app can be applied to other web tools as well.
Everybody has to deal with one of these. Take Jira, for example: to update the status of an issue, you have to open the browser, create a new tab, navigate to the website and find the right issue. Only then can you change the priority. This feels broken! This kind of interaction shouldn't take that long. In fact, you should be able to do this without opening a browser, without seeing a loading indicator and without switching context!
Raycast is inspired by command line interfaces. These interfaces are a great way to escape from the clutter of typical web tools. They are simple, responsive and extensible. However, they also have drawbacks: rich media elements aren't well supported, ASCII characters are too limiting for advanced UI design and it's very hard to discover commands. Raycast is our attempt to combine the benefits of a command line with those of a modern user interface. Its UI is similar to Spotlight or Alfred. You can launch the app with a global shortcut, search for commands, and perform quick actions. Similar to CLIs, you execute application-specific commands in Raycast, such as creating an issue in Jira or opening a pull request in GitHub. An integrated store makes it easy to install new extensions.
The app is entirely designed to keep developers in the flow. Most important: it's fast! Our client-first architecture makes every interaction instant. The app is written natively to deliver the best performance with the least amount of resources. It won't drain your laptop battery and it's accessible via keyboard shortcuts.
Consistency is key to being more productive. Once you've learned how to create an issue in Jira via Raycast, you know how to schedule a meeting in Zoom, create a pull request in GitHub, or set a reminder for tomorrow. All commands follow a similar structure and share UI components to make them look and feel the same. The components are built for speed: Text fields have autocompletions, elements in dropdowns are searchable and automatically remember previous choices. The app doesn't require a login and your data is stored encrypted on your local hard drive. All the API requests go directly to the third party services and we don't track any sensitive data.
At the moment, Raycast is only available for macOS and we're focusing on the fastest experience for Jira. Upcoming extensions will include an inbox for your GitHub notifications or utilities such as reminders. We can't build all extensions ourselves and believe in an open platform. We will release an API to build custom extensions and use the private beta to make sure that we can provide a great developer experience. We have tons of ideas and would love to hear what would you like to see in a tool like this. <comment><USER2> Did you consider writing this as a CLI tool and using amazing auto-completion to give you discoverability and an advanced UI? I love the idea of having a tool that brings these systems together but would rather keep my focus on the command line since that's where I'm spending the majority of my time.

      raycast ticket create "Run database migration in production"
      raycast ticket<tab>
        create claim set_owner close
      raycast ticket set_owner p<tab>

I've written a tool that uses a plugin system to easily add more "commands" to be run. I haven't tackled the tab completion piece yet, but I can imagine that it would significantly benefit the user experience.

<comment><USER3> Good idea! That is definitely something we want to explore in the future (giving a CLI for Raycast integrations on top of main app functionality), especially if people will be asking for this.

<comment><USER4> that will be cool. please do!

</comment></comment></comment><comment><USER5> If this was accessible for Voice Over (the MacOS screen reader), blind developers would literally bless you for this. Half of those non-coding, web- based tools have huge accessibility problems, and an efficient and ergonomic interface would be a godsend. I can't test the accessibility aspect myself, now, as I don't own a Mac and I don't work in a team environment, but I can get you in touch with some people if you're interested. The fact that you're doing native and that you're focused on the keyboard means there's much hope, though.

<comment><AUTHOR> Great idea and as you mentioned, this should be possible with our native implementation. I'm not too familiar with the accessibility features provided by Apple. Feel free to send me an email (email@example.com). We're curious to explore this and help other developers as much as we can.

</comment></comment><comment><USER6> I like the idea. My feedback: the name seems like it's going to confuse people. I almost skipped by this post when I saw the name at a glance because I'm not particularly interested in 3D graphics.

<comment><USER3> Thanks for the feedback. Yeah, it crossed our mind that some people familiar with 3D graphics term might get confused. I really hope that there are not too many people in our target audience familiar with it, though I might be wrong :)

<comment><USER7> If you're targeting developers then I suspect you'll find many of them have at least heard of the term raycasting from CS degrees at the least.

<comment><USER3> Fair enough! Hopefully it will not become a problem. In the end, it's just the name and we want to be defined by the product and its value rather than by the name itself.

As to why exactly we picked it: as ray casting is a way to instantly query information about closest objects, we thought it would be a good metaphor for instantly querying and accessing different third party services. Rays represent speed and focus.

</comment></comment></comment></comment><comment><USER8> Maybe it's because I'm a Windows user so I'm not your target audience Mac user, but my IDE already does all of this.

From my IDE , I can already interact with GitHub, JIRA, search stack-overflow, and pretty much anything else either natively or through the plugin system.

<comment><USER3> Fair point and I absolutely agree, VSCode has some great integrations with other services and in fact solves similar problem of context switching. However there are quite a lot of people that don't use VSCode, not to mention you're not always in your IDE when you need to perform these tasks. Having said that we want to explore some ideas where we integrate deeper with IDEs like VSCode and provide commands based on the context (e.g. provide documentation search based on the coding language, suggest filing a task for TODO comments, etc).

</comment></comment><comment><USER9> I want something like this, which is why I more or less have the skeleton and something that at least approaches this idea, built organically through time using various utilities. Rofi, some shell scripts, etc.

This is a great idea in theory but much harder to do properly in practice. The idea is only really worthwhile as long as you can really extend it to a lot of things(no one cares about adding an Nth tool that can do GitHub and jira and one more thing).. and that's where this is going to go wrong.

There are reasons the interfaces to many tools that we use are as complicated as they are - it's needed to use the tool to its full effect. In order to achieve the same effect in this tool, you are doomed to constantly reimplement literally the entire interfaces of all the interesting services, just as CLI interfaces.. and that's just not gonna scale.

I'm not into all this YC stuff, but does the YC20 in the title means that someone has funded this idea?

<comment><USER10> > I want something like this

It's existed for almost 40 years, and it's called emacs. If anyone questions emacs's ability to display incredibly useful UIs, try using magit[0]. Emacs sucks though, so I hope this comes out better!

[0] [https://magit.vc/](https://magit.vc/)

<comment><USER11> Also the Raskins', Jef and his son Aza, were onto this a long time ago. The general idea is applications, desktop or web, are the problem and that a better interface is one that provides a ubiquitous means of issuing commands with natural language.

About 10 years ago or so Aza created Enso which ran on the desktop and then Ubiquity which ran in the browser. These were both steps in this direction. I looked at going further with the idea but quickly ran into the question of how best to implement with currently available desktop technologies. But a lot of folks have been nibbling at the edges of this problem for a long time and they end up using rofi or dmenu or emacs and a bunch of custom scripts.

In my opinion one really needs to design a brand new shell from the ground up. But when I say shell I mean OS, not terminal.

</comment></comment></comment><comment><USER12> So like [https://getcommande.com/](https://getcommande.com/) but focused on devs?

I expect to see more trends of the spotlight/alred/vscode command+p UX being used for different verticals.

Pretty meh on this use case, however, as devs are very difficult to sell to. I guess that's why you're focused on Jira and selling to enterprise.

<comment><AUTHOR> Yes, Command E has a similar UX. Actually, we started with Jira because many devs that we interviewed mentioned it as a big pain point. It's slow and confusing but you still have to use it to keep your team up-to-date. As to enterprises, we focus on individuals first but see value for such a tool in a team setup.

</comment></comment><comment><USER13> Shameless self promotion but if Python is your thing and the terminal is your favorite place then have a look at [https://smetj.net/termfunk_bridging_the_gap_between_python_a...](https://smetj.net/termfunk_bridging_the_gap_between_python_and_the_terminal.html)

</comment><comment><USER14> I wish you would just let us download it instead of getting added to some early access list. I'm probably going to forget about this by the time you let me download it...

<comment><USER3> We want to open it up as soon as possible. The main reason behind the private beta is that integrations such as Jira are fairly complex due to different setups and a lot of customisation so currently we're in the process of "onboard new company -> fix bugs -> try again" and so on. It's getting better on each iteration and as soon it reaches certain level of stability on the integrations side, we're going too open it up to everyone.

</comment></comment><comment><USER15> How is this different from workflows in Alfred?

<comment><USER3> Our main differentiator from Alfred is provide much deeper and richer integrations with other services. One of the goals for Raycast is to keep you away from browser that can distract you from work. Also we have a lot of plans for team features that Alfred lacks of. And yeah, there's certainly going to be an overlap :)

</comment></comment><comment><USER16> I don't know what's being used to build the user interfaces, but I'd look at Shopify Polaris for some inspiration. It's been a pleasure to work with it. Although it's quite restrictive (no colour customizations, for ex), it gives users standardised and accessible screens. I wonder how debugging would work.

<comment><USER3> Nice, consistent design system and guidance is definitely something we want to have for the future platform. Thanks for pointing out to Shopify Polaris, looks very interesting!

</comment></comment><comment><USER17> Side question. If you wrote it as a side-project while at Facebook, doesn't that work belong to them? How did you launch a business on this idea, did you strike an agreement with them or are you taking the do-first-ask-permission- later approach?

<comment><AUTHOR> It was a different tool and tight to the internal issue tracking system that Facebook is using. We realized there is value in having a tool that simplifies the interaction with overloaded web apps and it's crucial to cover many of them. Obviously, we didn't share any code and built Raycast after we left.

<comment><USER17> Probably you mean you didn't _write_ any code or notes on the idea until after you left, so there was no copyrightable IP that you were under contract to share while you were employed? But I get the idea. Thanks that's helpful.

</comment></comment></comment><comment><USER18> I'm fairly confident one can write an Alfred plug-in for most of these tasks.

<comment><USER11> Yeah, my idea was something with the interface of a launcher but where the results are display as a tree list. The result of a very large set of commands would either be a tree list or the rendering of some other GUI element in which case the tree list results would be empty. In turn, the elements of the tree list could be easily selected and another command could be run on them. This is very similar to something like gnus in emacs only with a modern UI.

</comment></comment><comment><USER19> Thanks , Looks like Firefox ubiquity function . It was great while it existed.

</comment><comment><USER20> This sounds similar to another tool called Linear [0], as described in this TechCrunch article [1].

Though it seems that they're only primarily focused on work issue tracking (GitHub, Figma, etc.).

[0] [https://linear.app/](https://linear.app/)

[1] [https://techcrunch.com/2019/11/21/linear-lines- up-4-2m-led-b...](https://techcrunch.com/2019/11/21/linear-lines-up-4-2m-led- by-sequoia-to-build-a-better-platform-for-software-developer-collaboration/)

<comment><USER3> Yeah, Linear is a great tool and has an amazing UX, though as you correctly noticed they are building standalone issue tracking tool while we're building an app that sits on top of other web apps allowing you to use them without going to a browser.

</comment></comment><comment><USER21> 1\. What are your plans for monetization. I hate start using and getting used to something and then monetization or tracking spoils things.

2\. Is the app a native Macos App or some react-native/electron wrapper?

<comment><AUTHOR> 1\. We will keep a free tier, some kind of pro version and mainly monetizing features for teams/organizations. We're fully committed on privacy! 2\. The app is 100% written in Swift for macOS.

</comment></comment><comment><USER22> The text rewriting on top of the page is incredibly annoying. It's too much text always changing and it doesn't really give any value.

Product looks interesting though!

<comment><USER3> That's good feedback, we might consider simpler ways to show different possible use cases.

</comment></comment><comment><USER23> I hope you guys succeed.

It's aggravating having to stop and use my mouse all the time.

Feels like I'm constantly stuck in traffic while coding.

<comment><AUTHOR> > Feels like I'm constantly stuck in traffic while coding.

Nice metaphor!

</comment></comment><comment><USER24> Seems interesting, although I fail to see any command line inspiration in the cast or screenshots. It looks like a perfectly normal GUI with keyboard shortcuts and a text filter for narrowing down on some activity?

</comment><comment><USER25> Looks interesting, excited to see where it goes.

It feels to me like something a motivated open source project could do well, too. What's the thing that will get people to pay for this? Slick team/enterprise features?

<comment><USER3> As you correctly guessed, we're planning to provide features that would be useful to teams and larger organizations. Shared commands, integrations with custom internal tools, shared instant knowledge base and so on.

</comment></comment><comment><USER26> Yea its about that time again: someone is rewriting Emacs. Happens every few years or so. Not hating, just saying. Maybe one of these decades it may actually be better than the real thing.

</comment><comment><USER27> Love the concept & the idea! But why did go for MacOS / Swift instead of something cross-platform, such as Electron or Qt? Many devs outside of SV aren't using Macs.

<comment><USER28> Applications like these highly benefit from deep integration into the environment. Also, keeping them native and easy on resources makes them using a snap.

You want these to come and go quickly, at the whim of a fingertip. You want them to connect to your local search services, reuse local components, etc.

The biggest problem for most of these "Launchers", is that they try to be cross-platform, making them slow and a pain to use, as soon as you want more than just basic seek&run. I am still trying to find a suitable on Windows, that would make me as happy and satisfied as Quicksilver does on macOS.

<comment><USER29> Wox+Search Everything is my spotlight/alfred replacement for windows. Not on the same league, but the ux/ui at least does the job.

Also use SmallWindows for a Mission Control like interface.

<comment><USER28> Wox seems to have a clever way to do user plugins by just using a JSONRPC interface.

</comment></comment></comment></comment><comment> the-peter Is this integrated with the shell? Can I write shell scripts and python scripts to eg. grab today's entries from my gmail calendar, etc

<comment><USER13> Shameless self promotion but have a look at [https://smetj.net/termfunk_bridging_the_gap_between_python_a...](https://smetj.net/termfunk_bridging_the_gap_between_python_and_the_terminal.html)

</comment></comment><comment> apotheosis-neko Heads-up! Is the site down, seems to be loading forever for me. Want to check it out more, since it seems like I am the target market.

<comment><USER3> Hi! Thanks for the heads up, could you please check if the website loads for you now?

</comment></comment><comment><USER30> Looks great! How do I try it out?

<comment><USER3> Thanks! Sign up for the private beta and we'll send you the build as soon as possible. The main reason for "private beta" mode is to make sure that complex integrations such as Jira work for people. We're onboarding people everyday, catch some errors, patch them and so on.

</comment></comment><comment><USER31> Awesome landing page. Curious if you guys made it yourself or outsourced to an agency?

<comment><USER3> Thanks for the kind words! We've built it ourselves, and to be honest neither of us is a web developer or designer so we're happy that it came together in the end.

</comment></comment><comment><USER32> Do you support Jira Enterprise (I.e self hosted) and GitHub enterprise?

<comment><AUTHOR> Not yet but more and more people asking about it.

</comment></comment><comment><USER33> Looks pretty cool too bad (or maybe, good) I don't use Jira.

<comment><USER3> Which integrations you would be interested in?

We're going to be adding more integrations in the future, such as GitHub, GitLab, Slack, GSuite and so on, stay tuned.

<comment><USER33> GitHub would be cool. I also use Slack and Clubhouse.

<comment><AUTHOR> We have a lightweight extension for GitHub and more will come. What would you like to do with an extension for GitHub? Plan projects? Search code? Manage packages?

<comment><USER33> 1\. Open repos. I have a lot of them. 2\. Search code. 3\. Open PRs that I need to review. 4\. Create issues / Open issues that are assigned to me. 5\. Search repos / starred repos

<comment><AUTHOR> We cover already some cases of your named ones, such as the create issues and list your assigned ones but aren't quite there yet for others. Seems like these are the common ones and we'll take a deeper look into them.

</comment></comment></comment></comment></comment></comment><comment><USER34> Isn't any open source solution available for this already?

</comment><comment><USER35> How mod-able is it?

<comment><USER3> We have plans to provide API for building custom integrations as soon as we're ready to settle down with the framework. At the moment there's still a lot of experimentation so we're building all integrations ourselves.</comment></comment>


Thank you Apple for rejecting my app - <AUTHOR> http://nbodyphysics.com/blog/2014/09/20/thank-you-apple-for-rejecting-my-app/

<comment><USER2> So the problem with the Apple Review process is that Apple is making the decisions on what constitutes good or bad UI.

The Google Play store (and others) already give you feedback - customers give ratings and can provide a comment. This is much better than a central authority dictating what is good and what is bad.

There are many apls that have no need for a great UI - that a perhaps more functional in nature than aesthetic.

The beautiful thing about an open policy like the Google Play store is that you can not just get actual customer (Apple reviewers are probably not your customers) feedback and actually REACT to the feedback by uploading a new version right away... While on Apple Store users have to wait 7-10 days for the App to be "approved" \- and if it gets rejected you have to wait another 7-10 days.

<comment><USER3> _This is much better than a central authority dictating what is good and what is bad._

It's ironic that the company that commissioned the _1984_ ad ended up seemingly irrevocably drawn towards centralized authority and secretive hierarchical decision-making. (They were always at war with Google. Always.)

<comment><USER4> What's ironic is that people think nothing of google keeping spam out of its index, but have a problem with Apple keeping spam out of the AppStore.

Apple's beef with Google started when they counterfeited iOS, which occurred while the Google chairman was on the Apple board of directors. (Something I would think would be pretty actionable.)

Apple is not a centralized authority because Apple doesn't have a monopoly on smartphones. The decision making is neither hierarchical or secretive, as they have published the rules, and will cite chapter and verse when they reject you.

I got rejected. I didn't cry, but I was pretty pissed for about 4 hours. It sucks and it's hard not to take it personally. But once I was objective, I realized they were right, I fixed the problem, and got published.

Like OP, I realize they were right.

Given the number of apps I've submitted to the Appstore and the few rejections I've gotten, it's clear Apple is playing fair.

But it is ironic that google fans who never submit apps to the store generate so much grief and noise over Apple's rejections while being mum about googles actively shaping the the entire web to be lower quality.

And unlike Apple, google does have an effective monopoly.

<comment><USER5> It's so refreshing to hear the attitude in this article, and MCRed's above. It's completely reasonable, this understanding that Apple has a right to decide what it sells in its own store. Unfortunately, other comments here often reflect the opposite attitude: "fAscIsm cLoseD anDroid aRRgh."

Imagine this: A designer walks into corporate headquarters of Macy's with his sample garments that he wishes to sell there. He is given the opportunity to talk to a Macy's buyer (the person who selects garments to sell).

The shirt the man shows says "So sO seKsy" on the right sleeve, there is what looks like a mustard stain on the collar (he defends that it is "the beautiful sun", and the construction is terrible- a button falls off while the buyer is looking at it.

      Buyer: "I'm sorry sir, this shirt is grotesque in my view. Best of luck to you."
      Designer: "Screw you! I'm going to sell it to Target! I'll never shop here again!!"

Apple has no responsibility to sell shirts that it believes are ugly. And the OP recognized this and took his own responsibility. Kudos!

 _Note: Not an Apple fanboy, see previous comments, but i do use some of their products_

<comment><USER6> Yes but at least a Macy's shopper doesn't have to resort to hacks to even be allowed to wear that shirt. (Installing third-party APKs on an Android without the app store, not possible without jailbreak on iOS) Could they just go to the other store? In this instance that would have an upfront cost (getting a new phone)

</comment></comment></comment></comment></comment><comment><USER7> One of the things that always bugged me about programmer interfaces is the poor choices made.

For example in the interface from this article; Why did he pick a marble background for the buttons? Why that weird font? Why those bezels?

He could just as easily have picked Helvetica (or any other sans serif font really), and some flat colour and gotten a distant but not obnoxious facsimile to the iOS/android designs.

This is really a pet peeve of mine when I see this stuff from my colleagues. It doesn't even have to look great, but your stylistic choices shouldn't be worse than of you had made no choice at all.

The other thing (although not present here) is when programmers pick eye blasting 0xff red and 0xff green for text on a white bg. Just type 0x7f instead and it reads so much better!

</comment><comment><USER8> What's funny is that ugly apps actually do alright on Android. I don't know how many times I've seen an app have 5 stars and hundreds of thousands of downloads, only to install it and find out the UI is horrendous.

This seems to reinforce a pervasive stereotype that Android users are utilitarian while iOS users are much more concerned with aesthetics and form.

<comment><USER9> I think you would find that most iOS users are just as utilitarian. The vast majority of complaints you see on iOS app reviews concern functionality. If anyone, you should accuse Apple of being (overly?) concerned with aesthetics.

<comment><USER10> I would guess that the majority of users on both platforms don't really care, or don't understand the subject clearly enough to verbalize it. But among the most vocal and informed users of each platform, the difference suggested by the GP is quite clear.

</comment></comment></comment><comment><USER11> I think developers should consider spending $1-$10 on graphics from sites such as graphicriver to spruce up the design of their apps.

I for one am happy Apple rejects ugly applications. There is no place for them on my phone

<comment><USER12> Because if Apple didn't reject them you'd wake up one day and find 50 of them pre-installed for you?

<comment><USER13> No, because if Apple didn't reject them you'd download 50 of them in the process of finding one good one.

<comment><USER14> Doesn't Apple show you screenshots and reviews?

</comment></comment></comment></comment><comment><USER15> Don't know if the author is on here, but please use a modified framework (or the default UI elements) when you develop your app. Also, you can throw in some pre-baked icons (I dunno if font-awesome is usable on iphone, there's gotta be something similar out there)

You can create a pretty good (albeit default) looking app by just using the default elements, outside of the actual view that handles the game.

You shouldn't have needed Apple to tell you that looked bad. Games don't have to have fancy UX, it's all about what the game is going to do, look at some other games and see how they do it

<comment><USER16> It looks like this was a unity game, so no access to the default UI stuff.

<comment><AUTHOR> Yep. Unity. (author here)

However, in effect I did the same as using default assets by buying assets that were ok across platforms.

<comment><USER15> Ah awesome -- was really hoping I didn't come off as judgemental in the comment.

Mind sharing what you ended up using? I didn't see it on the post (maybe I didn't look hard enough?).

[EDIT]

I just realized the second screen shot is the changed app...

After a quick google search I found stuff like this (the first one doesn't look bad at all): [http://forum.unity3d.com/threads/gui-ngui-skins-and- widgets-...](http://forum.unity3d.com/threads/gui-ngui-skins-and-widgets- collections.159697/)

Is that usable?

<comment><AUTHOR> I chose Mad Level Manager ([https://www.assetstore.unity3d.com/en/#!/content/10070](https://www.assetstore.unity3d.com/en/#!/content/10070))

It's capable of a lot more than I used but I wanted to get this done and go on to the next set of physics ideas.

I am also playing with the Beta of Unity 4.6 which has a lot of the same ideas as NGUI built in. These will make it much easier to make "non-ugly" UIs with very modest effort.

</comment></comment></comment></comment></comment><comment><USER17> I appreciate what Apple is doing, and holy crap it was indeed ugly. Still I'd rather let the market decide. A better approach would be for Apple to tell you that your app was approved but it would be harder to find (like you'd have to scroll/click/etc a bit deeper) until you prettied it up (or until it got a bunch of good ratings despite its appearance).

<comment><USER18> Apple is a part of the market.

<comment><USER19> Apple controls access to a market.

Markets work because lots of different people get to make purchase choices. Their choices become information that feeds into the competitive process. If there's demand for a product, the price offered for it should increase (the manufacturer should be able to carve out larger profits). That should attract competitors, and increase supply, and the competition should help create products that are both better designed and lower priced.

When Apple prevents access to the market, it stops this process taking place. If there's no price signal, there's less incentive for people to compete; the product's niche hasn't been validated.

But you're right, this market is hierarchical, and at a higher level, Apple is just a part of the bigger market. In that market, I choose Android in large part because of how Apple controls their sub-market.

</comment></comment></comment><comment><USER20> Since Apple has the dominant appstore, they can afford to be choosier, which, at least in this instance, helped a developer improve his app.

Over at BlackBerry, "OMG somebody wants to publish an App!!"

<comment><USER21> _> Since Apple has the dominant appstore, they can afford to be choosier_

Which creates a feedback loop in which the store improves in both quality and quantity - unlike WP and Android - sadly.

</comment></comment><comment><USER22> Relying on App Store reviewers for feedback is a bad idea. The whole process is capricious. It's likely had he submitted at a different time and gotten a different reviewer, the app would have been approved.

</comment><comment><USER3> Of course there's no consistent standard here, so it's a completely arbitrary decision by the reviewer. On another day, the first version could have passed.

(The iOS HIG is supposed to be the standard, but strict adherence requirements would remove 98% of the apps on Apple's store.)

<comment><USER4> You've constructed a false dichotomy. There is a spectrum from 0-%100 adherence with the HIG and all the other rules. While the reviewers do not require %100 conformity, that does not mean there is "no consistent standard" or that its "completely arbitrary".

In my experience reviewers are very careful to be precise and document, including screenshots, the specifics that cause a rejection.

Having been rejected, none of them were arbitrary. Were you ever rejected?

</comment></comment><comment><USER23> It's always good before starting do design for any Apple product to have a quick look at their Human Interface Guideline (HIG) [https://developer.apple.com/library/ios/documentation/userex...](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/MobileHIG/index.html).

They have HIG for almost everything.

I also read that a lot of apps are developed on iOS first [http://www.businessinsider.com.au/app-design-company- directo...](http://www.businessinsider.com.au/app-design-company-director-all- of-our-clients-choose-ios-over-android-2012-7). I wonder if there's any truth to that.

But saying that I know that Google is pressing their Material Design [http://www.google.com/design/spec/material- design/introducti...](http://www.google.com/design/spec/material- design/introduction.html) quite hard lately. Would really love to hear what Android devs think of the Material Design. Are they going to port their current app design to it?

</comment><comment><USER24> To those suggesting it's better to rely on customer feedback and reviews to know how to improve the design/UI of your app, what would you find more useful:

1) A 1-star review from a random user, with a comment saying the app looks ugly.

2) A detailed report with screenshots and a list of places where your app fails to meet basic UI/design principles, made by someone whose job it is to give you feedback so that you can improve your app.

I'll take option 2 every time, and most users from option 1 aren't going to even bother to complain - they'll just not use your app.

</comment><comment><USER25> As someone who is more engineer than designer and can recognize good/great design, but cannot necessarily produce one myself, I feel that this type of feedback is great. If I look at a design or user interface interaction and say "I could had done that," I feel that it isn't that good. Higher standards will push you to better results

</comment><comment><USER26> He could have asked for a second opinion elsewhere. The feedback would have been the same as Apples.

Going through 15-60 day review process for that is ridiculous, just like the post in question.

<comment><USER16> Where are you getting 15 to 60 day review process from?! Numerous sources report an average of 5 to 10 days.

The only one I've ever heard of going anywhere like 60 days was the Gmail app, and that was almost certainly a cycle of rejections; when it finally shipped, it barely worked at all, and tended to crash.

<comment><USER26> A bit of exaggeration on my part. But one of my applications was in a review stage for 20 ish days due to delays within their review process a while back.

<comment><USER27> How dare you exaggerate? Give us cold hard facts, now. Show me paperwork to prove your app was in this stage for so long, or you're clearly lying.

</comment></comment></comment></comment><comment><USER6> Does it matter at all? It has nothing to do with the experience of the actual game. Apple wasted your time on a pointless detail and you thanked them for it.</comment>


All 21 TB of code on GitHub was moved to cold storage at an actual Arctic vault - <AUTHOR> https://www.syfy.com/syfywire/github-open-source-code-cold-storage-arctic-code-vault <comment><USER2> Wait... only 21TB? I have a 20TB disk (two 10TB disks in a RAID) which I got a couple years ago with the first three paychecks of my first ever job.

So basically... almost everyone could store aall of this data with a bit of money saving! I would have guessed there to be much more...

<comment><USER3> Do these 21TB include all the repository histories, issues, releases, etc?

</comment></comment><comment><USER4> the more amazing thing to me is the idea that you can fit github on less than $500 in external drives. curious now about creating an all-of-github local mirror, could be a fun project.</comment>


Atom now using Io.js - <AUTHOR> https://github.com/atom/atom/releases/tag/v0.177.0 <comment><USER3> For those of you who like me who aren't sure what this is about: Atom - <USER2> editor from Github, Io.js - node.js fork.

<comment><USER4> Ah, thanks, I forgot that was the name of the fork and was definitely puzzled.

</comment></comment><comment><USER5> This isn't particularly surprising, NW.js (previously called node-webkit) switched to IO.js as well.

Edit: to clarify, this is relevant because both Atom and NW.js use a webkit shell.

<comment><USER6> Oddly enough Atom-Shell has apparently not made the switch to IO.js? No mention of it in the releases page.

[https://github.com/atom/atom-shell/releases](https://github.com/atom/atom- shell/releases)

<comment><USER7> atom-shell absolutely has made the switch to io.js, that's where Atom's node comes from.

<comment><USER6> Huh, I just downloaded the latest atom-shell and ran a hello-world that dumps the "node" version and it says v1.0.0-pre. That sounds like IO.js alright.

Why then would they still refer to "Node" in the release notes, all the way up to the most recent version??

"Fix initializing node integration in the webview when the page in it navigates."[1]

[https://github.com/atom/atom-shell/releases](https://github.com/atom/atom- shell/releases)

<comment><USER8> That's just a typo, it indeed does refer to io.js integration in WebView tags.

</comment></comment></comment></comment></comment><comment><USER9> Until they fix the 2MB limitation on editing files. No way.

<comment><USER10> Why do all threads about Atom seem to be full of people opening huge files with text editors? I've never had performance issues with Atom with a 2013 MBA.

<comment><USER11> Today I learned that in 2015 a 2MB text file is "huge."

<comment><USER12> How often do you find yourself editing a 2MB file _of code_? If the answer is "often", I'd strongly suggest refactoring.

<comment><USER13> I often use ST to analyse some log files. Do you have any other tooling suggestions besides the command line with grep/awk/... ?

<comment><USER12> Not really, no. I can't say I've ever used a text editor to search a huge log file in that way.

</comment></comment></comment></comment></comment></comment><comment><USER14> This is good news but I'm a little confused, if Io.js supports ES6 why do you need 6to5?

<comment><USER15> ES6 support is not a binary thing. IO.js has a newer version of V8 that supports more ES6 features than node.js's V8 version, but its not even close to all of ES6. to 6to5 shims the rest of the ES6 featureset. see here for more info: [http://kangax.github.io/compat- table/es6/](http://kangax.github.io/compat-table/es6/)

<comment><USER16> This doesn't explain it, why do you need to compile ES6 at run-time? Plugin authors should compile before distributing.

This would annoy me as a user, I don't care that you really want the await/async feature. ES5 is not that bad. It's not like the difference between Lua and Vimscript. Just use ES5 or compile your ES6 prior to distributing.

<comment><USER8> You compile ES6 at run-time in developer mode - ES6 compiles are cached and installing a plugin precompiles it on your machine automatically. However, if you're developing a plugin, ES6 will be compiled on-the-fly.

The summary is, It Just Works™, efficiently.

<comment><USER16> Cool, I retract my complaint then.

</comment></comment></comment></comment></comment><comment><USER17> What does this mean for Atom? Is it faster? Is the compiled size now smaller?

<comment><USER18> Most likely it means that there's a newer V8 involved. Otherwise there's not a tremendous delta.

<comment><USER19> This is bigger news for io.js than it is for atom. <<< I think is the lede.

<comment><USER20> Yes. It is arguably larger news for io.js.

However, that io.js ships with v8 4.1 is quite a large step ahead for dependants, not just for language features, but also under-the-hood stability and performance.

Of course, there is also everything that node 0.11.x has, plus a release schedule to match Atom's own release cadence. :)

<comment><USER21> io.js also ships with the node.js active core developers...

</comment></comment></comment></comment></comment><comment><USER22> This is interesting, and a very big business move to make the switch. Does this say something for the future of Node?

<comment><USER23> I though the whole point of io.js was that they would work on the project faster than Node, but eventually merge back into Node once Joyent became more transparent. The Node release cycle was pretty slow and they had some dispute with the contributors (top 5 original Node contributors now working on io.js)

<comment><USER24> Why would the io.js team bother merging their changes "upstream" to Node? io.js has momentum and mindshare.

<comment><USER25> They publicly stated they will merge back in upstream eventually all being well. They're doing it for the good of Node.js, not to create a rift and divide the community's efforts.

<comment><USER26> IIRC the Node Forward initiative was more explicitly focussed on merging back than io.js is. The subtext of io.js seems to be "we'll move forward with or without Node moving foward with us".

<comment><USER23> Yup. Also because Joyent asked that Node Forward not use the "node" term, even though it was in public domain a lot longet than Joyent's been around.

</comment></comment></comment></comment></comment></comment><comment><USER27> plus 6to5 support! :)

<comment><USER28> Any idea if that would mean auto compilation for your own files in a project? Or is it more for plugins and such?

<comment><USER29> It's for plugins: [https://github.com/atom/atom/pull/5299](https://github.com/atom/atom/pull/5299)

<comment><USER30> I'm curious as to how they will handle 6to5 versioning. 6to5 seems to be very much in a "move fast and break things" stage, and I'm not sure that's going to change any time soon.

</comment></comment></comment></comment><comment><USER31> I was just wondering today when this might happen. specifically because I want to use generators in a plugin (supercollider ide). great job guys !

</comment><comment><USER32> 90% of my work is on remote files by SFTP/SSH. How's that working in Atom?

<comment><USER33> You do have have few packages which helps you connect remotely.

</comment></comment><comment><USER34> Who cares? Is going to be slow an unusable non the less.

</comment><comment><USER35> Why would I ever use a text editor that uses even node.js, let alone some even newer thing? I don't understand how people can commit to such a thing.

<comment><USER33> You might use it if you are familiar with javascript as many people are. It makes creating packages for many people possible.</comment></comment>


Wikipedia Signpost: Crypto and bitcoins and blockchains, oh no! - <AUTHOR> https://en.wikipedia.org/wiki/Wikipedia:Wikipedia_Signpost/2020-01-27/In_focus <comment><USER2> I am not convinced that having a vocal blockchain skeptic (Mr Gerard has written the book "Attack of the 50ft blockchain" and has written many articles critical of blockchain and distributed ledger technologies) as an arbiter of Wikipedia pages on cryptocurrencies and blockchain is necessarily a good idea. For example, Mr Gerard will refuse to allow the addition of well-sourced articles on popular projects even though they are reliably sourced in major crypto news publications. As you can imagine, much crypto news doesn't reach the mainstream press, so this blocks a lot of useful information appearing on Wikipedia.

Also, major projects, such as IOTA, don't even have a Wikipedia page or stub, despite the project having a multitude of academic papers and reliably sourced news. Mr Gerard will say this is because of the huge amount of spam on the pages, but other crypto pages, and non-crypto pages, have plenty of spam and they still manage to appear on the site.

As an analogy, imagine if climate deniers were in control of Wikipedia's climate change pages.

Mr Gerard simply has too much influence on Wikipedia's crypto pages. There is certainly a crypto spam problem on Wikipedia, but it seems like he is actually censoring information, which for those interested in crypto, is somewhat ironic.

<comment><USER3> One of the downsides of Wikipedia's methods of conflict resolution is controversial articles select for editors with strong feelings.

I'm largely disinterested about cryptocurrency, so maybe I'd be an ideal neutral arbiter in arguments about such articles. But for the same reason, I'm not motivated to do the tiring political work that would involve.

<comment><USER4> If you write a negative book about a collection of topics and make it diverse enough not to have to go in detail you can tailor it such that wikipedia becomes the perfect promotion vehicle. It has to be negative since removing positive material is much easier than either writing it or removing negative material. (There is often some sub-human narcissist volunteer willing to preserve negativity.)

Sober neutral voices get nothing done. You have to be extreamly biased

<comment><AUTHOR> It's literally never not amazing to have crypto fans claim not being a crypto fan is a conflict of interest, BUT owning the crypto they're promoting isn't a COI.

</comment></comment></comment></comment><comment><USER5> Imagine having someone that makes money disparaging a particular technology in charge of the "truth" about the technology. I've challenged him to a debate on livestream, which he accepted, and then was never heard from again.

<comment><AUTHOR> I've been busy, I'll get back to you eventually.

seriously it's been flat out here, holy shit inbox 600, and my freebie budget is running sparse

(you can tell by the fact it took me 2 days to respond to this thread)

debates are tedious, let's just talk shit, that's way more fun - i tend to agree 99% with any coiner after all ... it's like, an atheist is an atheist for all religions, a theist is an atheist for all but one religion

</comment></comment><comment><USER6> Yeah, the cryptocurrency spam everywhere is a problem and I'm glad the community is fighting it. But for me, the more annoying remnant of this bubble is the fact that the meaning of the word "crypto", used for decades for "cryptography" (like in "strong crypto"), has now been altered and by default means "cryptocurrency." Which, because of many crooks involved, is often associated with its shady aspects.

<comment><USER7> The "You can treat [crypto] as short for "cryptosporidium[1]"." is a good find.

[1][https://en.wikipedia.org/wiki/Cryptosporidium](https://en.wikipedia.org/wiki/Cryptosporidium)

> Cryptosporidium is a genus of apicomplexan parasitic alveolates that can > cause a respiratory and gastrointestinal illness (cryptosporidiosis) that > primarily involves watery diarrhea (intestinal cryptosporidiosis) with or > without a persistent cough

<comment><AUTHOR> it's an awful disease that gives you the chronic shits, it's clearly the true meaning

</comment></comment></comment><comment><USER8> BTCPay could really use a WP article at this point.

</comment><comment><USER9> I'm confused.

Can somebody explain who's more corrupt ... cryptocurrency touts or Wikipedia editors?

Talk about the pot calling the kettle black.

<comment><USER10> Without Wikipedia editors and high rep Stack Overflow users, who could we rely on to destroy knowledge that we shouldn't be interested in?</comment></comment>


Metric mishap caused loss of NASA orbiter (1999) - <AUTHOR> http://www.cnn.com/TECH/space/9909/30/mars.metric.02/

<comment><USER2> [http://ars.userfriendly.org/cartoons/?id=19991212&mode=c...](http://ars.userfriendly.org/cartoons/?id=19991212&mode=classic)

</comment><comment><USER3> I favor going all metric. Knowing all the conversion rates is a pain. I suppose we are making progress, if slowly.

<comment><USER4> The problem in the USA though is that the bills passed by congress on the topic have not designated mandatory compliance: <http://ts.nist.gov/WeightsAndMeasures/Metric/lc1136a.cfm>

</comment></comment><comment><USER5> That event remains inexcusable.</comment>


Gnirehtet rewritten in Rust - <AUTHOR> https://blog.rom1v.com/2017/09/gnirehtet-rewritten-in-rust/ <comment><USER2> When I write Rust I tend to do so using functional/procedural patterns instead of object-oriented ones, and it doesn't seem like I run into issues like the ones described here very often.

Much of this write-up seems to cover things that were/are complicated because of OOP's tight coupling of state and actions on that state & the intersection of that with the additional constraints and controls Rust places on state management.

I'm not entirely sure which style/patterns are more idiomatic. I just know which ones keep me out of trouble.

<comment><USER3> I don't know about this. I think the trait system is so powerful of a concept for genetics and such that I find that I practice OO pretty regularly. I avoid dynamic polymorphism, but most OO practices translate really well into Rust.

<comment><USER4> Sounds closer to type classes usage a la Haskel than what I'd call OO (late binding)?

<comment><USER3> I try to capture data in a enum or struct, then define the operations available to that type. A trait allows me to capture common functionality across different types which implement that trait. With generics it allows me to be polymorphic.

If that's not OO, I don't know what is :)

<comment><USER5> Well, technically traits dispatch based on type and not on value. As long as you aren't wrapping everything into trait objects that is much closer to functional programming. Seems like a mostly semantical difference, though.

I guess there is a philosophical difference in whether you pass a large struct into a function or select the needed data at the call side and only pass that, though. Former might be easier to extend, latter is probably easier to test?

</comment></comment></comment></comment></comment><comment><USER6> The discussion of how borrowing impacts encapsulation, abstraction with private methods, and the observer pattern was informative and interesting.

<comment><USER7> I think the part where they're trying to abstract out a `content` method could be made to work by adding braces, so that the `&self` borrow goes away earlier than the end of the function. I think "nonlexical lifetimes" are also going to make more cases like that work automatically without braces soon.

<comment><AUTHOR> > I think the part where they're trying to abstract out a `content` method > could be made to work by adding braces, so that the `&self` borrow goes away > earlier than the end of the function.

Not in that case. It helps when dropping a borrow earlier avoids to violate the borrowing rules, like in this case:

        let mut a = [0; 20];
        {
            let b = &mut a[2..4];
        }
        let c = &mut a[6..8];

In the example from the blog post, content borrows the whole struct, and you can't drop the borrow earlier since it is used in the next line.

<comment><USER7> Right, you'd have to split up the following line so that `sum` is computed inside the block but assigned after it.

</comment></comment></comment></comment><comment><USER8> I think in the encapsulation / content example they missed the possibility of creating an explicit block on your own. I believe something like this would solve it:

        let new_sum = { calculate it from self.content() }
        self.sum = new_sum;

Since the sum value itself doesn't borrow anymore.

<comment><AUTHOR> Yes, you're right, this particular (artificial) example could be rewritten easily so that it compiles.

But the point was to show that a compiling program may not compile anymore after factoring some code into a private method.

<comment><USER9> Is the purpose of encapsulation to wrap all data fields in functions offering mutable references to data? I thought it was the exact opposite.

<comment><AUTHOR> The purpose was to show that something lifetime-bound to _a part of_ a struct becomes lifetime-bound to _the whole_ struct when returned from a function.

Using mutable references is the minimal way to get this.

</comment></comment></comment></comment><comment><USER10> Apparently the name is "tethering" backwards.

<comment><USER11> Embarrassingly, it took me until halfway thorough the article to notice this

</comment></comment><comment><USER12> Is there some valuable disscussion of the article on rust subreddit? If yes, could somebody please link it here?

<comment><USER13> [https://www.reddit.com/r/rust/comments/71ks57/gnirehtet_a_re...](https://www.reddit.com/r/rust/comments/71ks57/gnirehtet_a_reverse_tethering_tool_for_android/)

</comment></comment><comment><USER14> The "encapsulation" example is an interesting one, because it sits right in the fundamental difference between a Rust reference and a Java one, and the lifecycle considerations of a garbage-collected language vs one where lifecycles are statically determined by the compiler.

I guess one way to explain it, if one needed to, is to say that the Java object is effectively a collection of Rc<RefCell<T>>, and getters return copies of those Rc<>s. (Okay I know, garbage collection is not the same as refcounting, but in this kind of analysis it's effectively the same).

Makes me sit back and think how much work Java the language is doing for you here.

</comment><comment><USER15> > ... I introduced Gnirehtet, a reverse tethering tool for Android I wrote in > Java.

> At Genymobile, we wanted Gnirehtet not to require the Java Runtime > Environment, so the main requirement was to compile the application to a > native executable binary.

While it is nice to see new projects adopting Rust, I really don't get the point of having a tool targeted to Android developers not depending on Java.

<comment><USER16> As far as I can tell it's not necessarily targeted at Android developers. It seems like the primary use case is if you have some device with cell service and you're out of WiFi range but want to use your Android device with an internet connection.

They must have customers that are in that situation somewhat regularly (traveling business people?) and keeping the overhead low is desired.

</comment></comment><comment><USER17> Hello Gnirehtet is really a great tool.

Is there a possibility to have the RUST Version compiled for an ARM architecture?

I'm running it on a Raspi3 as a tether box. Obviously less CPU consumption would be an enormous advantage. , since with the java version transmit speed only reaches arround 50 kbit/s.

Thank you very much for your great work!

<comment><USER10> It should work, yeah.

<comment><USER17> Awesome! will you put a executable at GitHub like the others? Thank you very much!

<comment><USER10> I'm not the maintainer of the project, so I can't do that. Rust can cross- compile to that architecture though, so it should be possible, hence my reply.

You probably should file an issue so the maintainer actually sees it.

<comment><USER17> Here it is! Awesome! [https://github.com/Genymobile/gnirehtet/issues/46](https://github.com/Genymobile/gnirehtet/issues/46)

</comment></comment></comment></comment></comment><comment><USER18> > _At Genymobile, we wanted Gnirehtet not to require the Java Runtime > Environment, so the main requirement was to compile the application to a > native executable binary._

While I think that rust is a great choice, if multi platform static executables is your goal then I think you missed a language that does such a thing extrmely well. I'm surprised the author didn't even consider Go for this purpose.

<comment><USER19> You may have missed these three points the author listed, favoring Rust:

      * memory safety without garbage collection,
      * concurrency without data races,
      * abstraction without overhead

Go has garbage collection, doesn't statically prevent data races, and somewhat infamously allows for only minimal abstraction.

<comment><USER20> You should reread article again:

> But at that time (early May), I was interested in learning Rust, after > vaguely hearing what it provided, namely:

And then he listed what you listed in your comment.

As he wrote the main requirement was not to include JRE. This could also be achieved by using Go.</comment></comment></comment>


Ask HN: How fast is an AWS auto scaling group? - <AUTHOR> I have been struggling to find an answer to this simple question. What is the rate at which new instances can be created in an autoscaling group?<p>Let's say if there is a sudden spike in traffic, and I need to go from 50 EC2 instances to 300. How long would it take (lets assume a pre-baked AMI). If every EC2 takes x minutes to start up, in how much time will my auto scaling group achieve the target size? Will all 250 instances be started up in parallel ? <comment><USER2> This question would be better asked to AWS support. Barring that, why not just test it with an few instance types and measure the results?

</comment><comment><USER3> If you change the "desired" setting directly from 50 to 300, they will start up in parallel</comment>


Did using Picasa just get my IP banned at Google? - <AUTHOR> http://johnmarshall4.tumblr.com/post/21996288422/did-using-picasa-for-mac-just-get-my-ip-banned <comment><USER2> This is from 2012. Is it relevant anymore?

<comment><AUTHOR> Pretty relevant, happened to me, that's how I came across this. I was using "drive" utility and my IP was banned. However I just power cycled my router and changed it and back I was.</comment></comment>


All Presentation Software Is Broken - igvita.com - <AUTHOR> http://www.igvita.com/2012/05/14/all-presentation-software-is-broken/

<comment><USER2> i guess this sensational title is aimed to draw an audience?

There's nothing new here than what Edwards Tufte discovered long ago.

The tools are not broken. In fact they are getting increasingly better. Of course, if you don't know how to use them; rather, if you can't give a good presentation, it's not because of the software.

<comment><AUTHOR> To the contrary, the tools are getting progressively worse. Show me one feature in Powerpoint or Keynote that is specifically designed to give me actionable feedback on how to improve my presentation.

I'm not arguing for or against visual design - yes, you're right nothing new there. What I'm trying to point out, as we start migrating our presentation tools to the web, is that we _don't need to_ copy all the useless inheritance.

For now, and yes I'm the early technical adopter.. I'm willing to edit the HTML markup directly, heck I'll FTP the darn thing to your server, and will do other backflips.. all if you manage to give me good feedback on how to do a better presentation next time around.

<comment><USER3> > all if you manage to give me good feedback on how to do a better > presentation next time around.

You really should ask the audience that question.

What a web based tool could do is integrate a feedback mechanism, maybe even tied to specific slides. Imagine you are giving the presentation, and I am bored to tears by your slide on profit margins increasing in Q2.

So I open the synchronized viewer app on my phone, and touch the frownie face icon or the icon that says 'zzzz'. Hopefully you will replace the bullets with an animated chart for your next presentation.

Maybe there already is an app for that?</comment></comment></comment>


Can Man Ultimately Take on 'The Machine' in Chess, or Anywhere? - <AUTHOR> http://motherboard.vice.com/blog/can-man-ultimately-take-on-the-machine-in-chess-or-anywhere

<comment><USER2> Man built the machine.

</comment><comment><USER3> unplug the machine. then see how well it fares. ;+)

-bowerbird</comment>


Shopify shares dive after short seller's negative report - <AUTHOR> https://www.cnbc.com/2017/10/04/shopify-shares-dive-after-andrew-lefts-negative-report.html <comment><USER2> Kinda feel that there's a conflict of interest here. It's in Citron Research's interest for the shares to drop in value, given that they've been shorting them.</comment>


Facebook Privacy List for Adblock Plus - <AUTHOR> http://www.squirrelconspiracy.net/abp/facebook-privacy-list.html

<comment><USER2> The Antisocial Adblock list blocks the same Facebook stuff and much more: <http://adversity.uk.to/></comment>


Imageflow: Respect the pixels, accelerate the web - <AUTHOR> https://www.kickstarter.com/projects/njones/imageflow-respect-the-pixels-a-secure-alt-to-image <comment><AUTHOR> Only 129 backers with 6 days to go?

This sounds like the type of project everyone should be supporting - <USER2> I'm missing something and there's an alternative that's more secure and optimised than ImageMagick?</comment>


Ask HN: How do I promote my Windows 8 apps? - <AUTHOR>

I'm 15, and I've made about 28 apps for Windows 8. I need to promote the 9 that I've made this month. How do you suggest that I do this, since Windows 8 apps are kind of unknown and not as rich a community as iOS? I know that my apps are not that good, but I need 100 downloads for the latest 9 apps.
Apps/Site: http://www.aeipsapps.tumblr.com <comment><AUTHOR> Clickable: [http://www.aeipsapps.tumblr.com](http://www.aeipsapps.tumblr.com)</comment>


OpenBSD 5.8 released - <AUTHOR> http://www.openbsd.org/58.html <comment><USER2> Nice:

      > Found my way upstairs and read hackernews
      > whining about comic sans and CVS.

Track 2, A Year in the Life. [http://www.openbsd.org/lyrics.html#58d](http://www.openbsd.org/lyrics.html#58d)

</comment><comment><USER3> Also happy 20th birthday OpenBSD! The other email from Theo today: [https://marc.info/?l=openbsd- misc&m=144515087006177](https://marc.info/?l=openbsd-misc&m=144515087006177) and/or [http://thread.gmane.org/gmane.os.openbsd.misc/225844](http://thread.gmane.org/gmane.os.openbsd.misc/225844).

<comment><AUTHOR> from the e-mail:

      Chuck and I also worked on setting up the first 'anoncvs' to make sure
      noone was ever cut out from 'the language of diffs' again.  I guess
      that was the precursor for the github concept these days :-).  People
      forget, but even FSF was a walled garden at the time -- throwing tar
      files with vague logs over the wall every couple months.

</comment></comment><comment><AUTHOR> Do remember to apply the patches after the install [http://www.openbsd.org/errata58.html](http://www.openbsd.org/errata58.html)

<comment><USER4> Does anyone have experience with the mtier binary update packages?

[https://stable.mtier.org/](https://stable.mtier.org/)

Looks interesting to us casual users with our 'dime Thinkpads'.

<comment><USER2> Congratulations, according to google you are the first person in the world to use that phrase to refer to thinkpads: [https://www.google.com/search?q=%22dime+thinkpads%22&ie=utf-...](https://www.google.com/search?q=%22dime+thinkpads%22&ie=utf-8&oe=utf-8)

<comment><USER4> It was an allusion to these lyrics...

[http://forum.tfes.org/index.php?PHPSESSID=d2186vii9bsmjvhk45...](http://forum.tfes.org/index.php?PHPSESSID=d2186vii9bsmjvhk45aleri9d0&topic=3290.msg75711#msg75711)

...so credit where credit might be due.

Seriously, a recycled core-duo Thinkpad in good clean condition without broken plastic round the PC card socket can be had for the price of a reasonable restaurant meal (with wine) for two in the UK. And that is at the neighbourhood family-run Italian, not the posh ones in Town.

<comment><USER2> An allusion to another one result wonder thinkpad phrase;) As far as the quality of old thinkpads[1] go you are preaching to the choir. My thinkpad fetish is actually why I googled your "globally unique dime phrase."

[1] Don't get me started on my new T550, I get depressed when I look at my old T41 and then have to use the T550.

</comment></comment></comment></comment></comment><comment><USER5> _The worm(6) now grows at a rate proportional to terminal size._

Finally...

</comment><comment><USER6> Glad they added sed -i, that should save some time. For me anyway.

</comment><comment><USER7> Just the demanded mandatory comment to complain about CVS and Comic Sans. Whiiiiiiinne whine whine.... ;)

<comment><USER8> You only see the website in Comic Sans, because you actually installed Comic Sans onto your system. The font isn't embedded, and those who didn't install it just see plain sans.

<comment><AUTHOR> frakturfreund is responding to one of the release songs which dfc point to [https://news.ycombinator.com/item?id=10408606](https://news.ycombinator.com/item?id=10408606)

Didn't I see an extension that would change a reference to Comic Sans to some other font? People do go to the extremes.

</comment></comment></comment><comment><USER9> _> Added pvbus(4) paravirtual device tree root on virtual machines that are running on hypervisors._

Which hypervisors are supported, e.g. is AWS an option?

<comment><USER10> From the man page: [http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD- current/man4/...](http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD- current/man4/pvbus.4)

      Supported hypervisors

      KVM
        Kernel-based Virtual Machine
      Hyper-V
        Microsoft Hyper-V
      VMware
        VMware vSphere Hypervisor and ESXi
      Xen
        Xen VMM

I don't believe OpenBSD on AWS is supported by Amazon, but there are several VPS providers that either provide direct support for OpenBSD VMs, or let you upload the ISO and install it yourself.

<comment><USER11> And since Linode is now switching over to KVM and has a direct-disk boot option, that should mean you can run OpenBSD on them as well, which should give Theo a nice case of indigestion.

<comment><USER12> We've gotten a few people say they got it running now. More choices for everyone :)</comment></comment></comment></comment>