Show HN: Manage servers easily online with Commando.io - <AUTHOR> https://commando.io <comment><USER2> It looks really nice, but I don't think I could justify putting my keys into a third-party's hands. The focus on security is commendable, but at the end of the day, I'm responsible for the security of my company's infrastructure, and if something _were_ to happen, telling the higher-ups that "yeah, we got 0wned because we gave root to a third party that we don't have any control over" is a fast way to be out of a job.

Leaving the keys to the kingdom in the hands of a third party who you can't directly audit or patch is an _enormous_ liability.

<comment><USER3> No more dangerous than Meldium: [https://www.meldium.com/](https://www.meldium.com/)

</comment></comment><comment><USER4> Not to sound like too much of a jerk but why would someone use this over a real configuration management tool like Ansible, Chef, etc? I see a lot of issues with this:

1\. I don't see any templating features 2\. There is no idempotentcy 3\. Unless you pay for enterprise you have to grant permissions to a cloud service to ssh directly into your nodes. This is a HUGE security issue. Sure I can whitelist your ip but what happens if you guys get hacked?

This doesn't seem all that much better than keeping my shell/python scripts in a git repo and then scp'ing them over to my hosts and executing them with ssh. Prior to proper configuration management tools this was how a lot of unix administration was done. This seems like a giant step backwards, except now I've got a pretty web ui to looks at and I have to grant ssh access over the internet to all my servers.

I'm sorry but I just don't see the value in this.

</comment><comment><AUTHOR> Founder here. Happy to answer any questions and take feature requests.

      The API is scheduled to be released in June (only for paid plans).
      Providing arguments/dynamic input when executing recipes is coming shortly.
      The ability to create/destroy servers from within Commando.io is also in development.

<comment><USER5> Hey nodesocket,

Just fired up a beta instance as I am quite intrigued by your tool-set. looks very nice on first shine.

Getting some permission errors when trying to get ssh access to an Ubuntu 12.04 server. I'm in touch with y'all via your intercom dashboard.

</comment></comment><comment><USER6> Looks neat, I might try it out but I don't see any pricing information.

Don't want to invest the time until I know it is something that would match my budget. Is that detailed anywhere?

<comment><USER7> There's a pricing page once you are signed up: [https://<yourusername>.commando.io/pricing](https://<yourusername>.commando.io/pricing)

Looks like the smallest plan is $18/month for "12 servers and 5 users". I'd love to see a smaller plan for maybe up to 5 servers. This would be neat to quickly deploy servers for weekend projects etc.

<comment><AUTHOR> Once we roll out of beta, we anticipate having a smaller starter plan, but the price point will be similar, around $8 - $12 a month.

</comment></comment></comment><comment><USER8> So how does this compare to Ansible tower which also comes with an web GUI + it is self-hosted

</comment><comment><USER7> Have you thought about adding some features to the group management?

So one could add a new user and then just have checkboxes for all the available groups. This way you could create a user who acts as a DBA and then just give him access to all the servers in the group "DATABASE" without giving him access to all available servers. I'm not sure how feasible that is but I couldn't find anything in the FAQ or the group/users page.

<comment><AUTHOR> Absolutely, group management in terms of users is something we didn't even think about when initially building Commando.io, however its become highly requested. The idea is, Commando.io becomes the source of truth for user access to servers. When you bring on additional employees or contractors simply add them into Commando.io and select which group of servers they can see and interact with. When the employee or contractor leaves, simply delete them from Commando.io. No more adding, removing keys into servers for each employee.

<comment><USER7> Sounds great, thanks for answering.

</comment></comment></comment><comment><USER9> Very cool, is there any ETA on parallel execution and background execution (ex: Currently, you have to stay on the page while the recipe executes.)

Additionally, it seems that the more servers you have, the more you pay per server. Our use case would be several sysadmins (less than 5 users) accessing 50+ servers, which would mean we'd be paying ~$3/server/mo, whereas on the lower plan it works out to literally half that, at ~$1.5/server/mo, is pricing already finalized?

Thanks!

<comment><AUTHOR> Thanks. Parallel execution and background will come at the same time. It is the next highest task in the queue after the API is completed. Additionally execution output (both stdout stderr) will stream via websockets, so no more timeouts.

In regards to pricing, our philosophy is the more servers you add, the more value Commando.io provides. Additionally our lower tier plans are discounted heavily since those are catering to smaller organizations, usually running $5 or $10 a month servers on DigitalOcean. With that said, pricing is still being tweaked and tuned, so absolutely open to suggestions.

</comment></comment><comment><USER10> So, this is like RunDeck ([http://rundeck.org/](http://rundeck.org/)), only hosted.

</comment><comment><USER11> Looks well designed and thought out.

Can you give me a use case as to when this would be better a better solution than say Chef or Salt?

<comment><AUTHOR> A few things.

Our mantra is simplicity and empowering everybody in a company to interact with servers via an easy to use web interface, this includes less technical employees such as support, marketing, and contractors. Others in the DevOps space are focused on ever increasing complexity and command line systems. Our approach is a beautiful web interface with no external dependencies (agents). Typical configuration management has a steep learning curve and requires expertise and upfront man hours. Going with Chef, Puppet, Ansible, require a large time investment, and companies have to send developers off to Chef school for two weeks to learn their systems. We don't ask our users to go to school. They can signup and start managing servers instantly with their existing stack (bash, perl, python, ruby, go, or node.js).

</comment></comment><comment><USER12> If someone manage to break into your server, won't it open up access to all your customer's servers?

<comment><AUTHOR> Each account on Commando.io is sandboxed (dedicated database). They each have their own set of keys with a randomly generated passphrase on the private key which is then AES encrypted and stored in the database. We take security very seriously, read more aout our practices at: [https://commando.io/security.html](https://commando.io/security.html).

<comment><USER13> I'm probably misunderstanding, but how is storing a key with an encrypted passphrase different than storing an encrypted key? Shouldn't passphrases be entered by humans?

</comment></comment></comment><comment><USER14> I use dsh for this: [http://www.netfort.gr.jp/~dancer/software/dsh.html.en](http://www.netfort.gr.jp/~dancer/software/dsh.html.en)

It's command line, but you can set up groups of servers and execute commands against all of the machines in a group at once.

</comment><comment><USER15> This looks very nice. Is there any plan to add support for Ansible? Not sure I'm a fan of having bash scripts in the UI which are not available locally (is that the case?). I'd much rather have an Ansible repo in git that I develop locally and push to Commando.io.

<comment><AUTHOR> No plan to support Ansible. However, being able to push/import scripts (we call them recipes) from git into Commando.io is a highly requested feature and on the roadmap. Also, just to clarify, we support recipes in bash, perl, python, ruby, go, or node.js.

<comment><USER15> That's unfortunate. I understand where you are coming from on making this absolutely as simple as possible for those who are maybe not so admin inclined, but I feel it's limiting to actual administrators/devops engineers, who are more than comfortable with traditional config management systems.

Personally as an administrator I want to be able to continue to use Ansible from the command line, but then grant access to my developers to a UI where they can easily spin up instances for temporary use.

That's just my use case. Otherwise, looks like a cool product. Good work.

<comment><AUTHOR> Thanks. I agree it is a tricky balance. We want to empower everybody (especially less technical users) to interact with servers, yet be powerful enough for "neck beard" operations engineers. When in doubt, we always side with removing "power" features for simplicity. With that said, is creating recipes in a web interface and editor a deal killer for you?

<comment><USER15> Yes, I think it would be a deal breaker for me personally. For the one thing, there would be a bit of effort to migrate from any config management system (my background is Chef and Ansible) to straight bash scripts. Also, it doesn't allow for the modularity and reusability of scripts that these services grant you. In fact, if you really want to make this simple, adding support for config management as crucial. I can easily import a Chef cookbook, override a couple attributes and have a MySQL server up and running.

So ya, I think adding support for a config management system (my vote is Ansible) would make this 10x more useful.

</comment></comment></comment></comment></comment><comment><USER16> Although obviously much simpler, I've always been a huge fan of csshx. [https://code.google.com/p/csshx/](https://code.google.com/p/csshx/)

<comment><AUTHOR> csshx is great but lacks the audit trail (output stored) we offer. Additionally with standard parallel ssh tools, you don't have centralized user access management, and cloud provider integrations.

</comment></comment><comment><USER17> This looks awesome! I was just thinking of something like this the other day. Can't wait to try it. Any chance of being able to import from Linode in addition to DO, EC2, Rackspace, etc?

<comment><AUTHOR> Unfortunately not Linode at this time. DigitalOcean, Amazon Web Services, and Rackspace for now. Based on demand Google Cloud is next.

<comment><USER18> Any particular reason for not supporting Linode?

<comment><AUTHOR> Demand just does not justify Linode support yet. Right now the majority of users are using DigitalOcean.

<comment><USER19> I would love to give it a go but need linode support.

<comment><AUTHOR> You may add Linode servers (we work with most any hosting provider), just you can't use the Linode API to automatically pull servers and details in like we do for DigitalOcean, AWS, and Rackspace.

</comment></comment></comment></comment></comment></comment><comment><USER20> Pretty cool project. I like the simplicity of it. Definitely bookmarking for the future.

Based on the video, can you run any shell/bash script you can think of? And does this have logging built in?

</comment><comment><USER21> Any thoughts on adding an integration for Slack?

I would like to see notifications for the following events:

1\. When a recipe (script) is run on a server.

2\. Any user administration updates. (Added user, removed user, etc.)

<comment><AUTHOR> We were just thinking about this. Currently we send e-mail notifications on each execution to all users in the account with general details. Hipchat/Slack notifications would be nice. We've created a GitHub issue in our internal tracker for this. Thanks.

[http://i.imgur.com/VEoGbqH.png](http://i.imgur.com/VEoGbqH.png)

</comment></comment><comment><USER22> Congratulations on your launch Justin!

</comment><comment><USER23> I like the UX. CLean, intuitive and to the point. Any plan for a private cloud version?

<comment><AUTHOR> We are working on Commando.io Enterprise, which is self-hosted and comes bundleded as a virtual appliance that runs on VMWare and VirtualBox just like GitHub enterprise. Send us an e-mail enterprise@ our domain to stay in the loop on it.

</comment></comment><comment><USER24> gorgeous -- curious, what is the backend tech? Fabric +/\- stuff like ansible/chef/etc?

NVM - just saw it's MEAN stack based.</comment>


Senator Challenges Zuckerberg: 'Hire American Workers for a Change' - <AUTHOR> http://www.businessinsider.com/senator-challenges-zuckerberg-hire-american-workers-2014-9

<comment><USER2> "Let me just say one more thing: Facebook has 7,000 workers. Microsoft just laid off 18,000. Why doesn't Mr. Zuckerberg call his friend Mr. (Bill) Gates and say: Look, I have to hire a few hundred people; do you have any résumés you can send over here?" Sessions said. "Maybe I will not have to take somebody from a foreign country for a job an unemployed U.S. citizen might take."

Rhetoric, gotta love it!

Bunch of the people who were laid off are immigrants.

<comment><USER3> Another way this is dishonest is that the majority of the 18,000 jobs were not even in the United States.

</comment></comment><comment><USER4> It's odd that it not only ok, but mandatory, to discriminate based on someone's place of birth.

<comment><USER5> Not place of birth. Power structure controlling place of birth.</comment></comment>


Ask HN: Is it inappropriate to ask why I was rejected from a job? - <AUTHOR> I recently interviewed for a software developer position. While I thought the interview went reasonably well (not great, but not bad either), I was turned down from the job.
I accept the decision that was made, but I'd like to know why. I'd like to know why because if there's some skill or concept I'm lacking as a developer, I'd like to fix that, so that I can do better at my next interview - wherever that may be.
Even if the feedback is, "you have no business being a developer," I'd want to hear it. Is it inappropriate of me to ask why I was rejected? <comment><USER2> Sure, ask, but ask right -- and "why was I rejected" is probably wrong.

In all likelihood, you weren't 'rejected' as much as someone else was 'selected' as being better matched to their needs.

So the proper, non-neurotic way to ask would be something like: "Thanks for your consideration. I was very enthusiastic about your position and it's still the kind of job I'd like to find. Can you share with me any ways I could be a better candidate for similar positions in the future?"

This gives the best chance they'll mention a couple things important in their evaluation where you could improve. (If you're really lucky, they may mention the exact things that caused them to prefer someone else.)

Also: don't take it personally if they say little, if at all. A sentence or two may be the most to hope for unless you have a strong relationship with an insider. Most organizations are risk-averse in hiring and being too detailed in a "sorry, you're not hired" explanation risks triggering resentment, argument, possibly even a lawsuit.

</comment><comment><USER3> For sure. Keeping the channels open is always good, and to ask for the reason for your refusal is a great way to do so, as well as a chance to learn some more about the whole process.

Not all companies would respond to such a request though, because they're afraid that if you get your reason you will sue them under some equal opportunity rule or some such, so be prepared that you will not get an answer, or make it clear in your request somehow without laying it on too thick that you are asking out of curiosity.

</comment><comment><USER4> I got two rejections when on the job hunt: one told me that their policy was to not discuss the reason any candidate was rejected and the other gave me very general reasons that I didn't find helpful (and were probably chosen by the recruiter because they weren't actionable). Even though they weren't very usueful, in neither case did it make anything _worse_ , so I say go for it.

</comment><comment><USER5> asking is fine, but if the company is more than just one guy, don't expect them to answer. From what I understand, it's a liability matter; telling someone why they weren't hired can get the employer in a lot of hot water if the reason was a questionable one.

But really, you should treat it a lot like dating; even an attractive person is going to need to ask several attractive members of the appropriate sex before finding someone for whom the feeling is mutual.

In either case, don't take rejection too hard; there are plenty of fish in the sea. Again, extending the dating metaphor, it's considered better to find yourself someone who likes who you happen to be than to try to modify yourself to a particular person's preferences. Sure, improve yourself, but improve yourself in general rather than just bending to the preferences of one entity.

</comment><comment><USER6> Ask but as another has mentioned, ask what you can do to make yourself a better candidate for that type of position.

But realize that it is only one company and might not reflect reality in other companies. Better to ask many people what they are looking for in co-workers and employees.

</comment><comment><USER7> Dont expect to hear a valid response :) but I see no reason why you should ask (as long as you phrase it in the right way).

</comment><comment><USER8> What have you got to lose?

</comment><comment><USER9> I've always asked. The worst they can do is not respond.

</comment><comment><USER10> I asked once and they offered me a job with a shorter period. I asked once again for another position and the feedback they gave me was really helpful. So, I totally would ask.</comment>


Programmer wage gap data: I challenge employers to prove you're fair - <AUTHOR> http://www.bls.gov/cps/cpsaat39.htm So, people were saying the direct link to the giant table of data was confusing, so here we are.
There is a pay gap between men and women in computer programming and software engineering. Women who are classified as "Software Developers" on average make 86 cents for every dollar their male peers make, and women classified as "Programmers" on average make 93 cents on every dollar their male peers make. Here is the data straight from the Bureau of Labor Statistics http://www.bls.gov/cps/cpsaat39.htm and again in a nice little screenshot http://imgur.com/vMoOU (thanks heypel).
This is a challenge to companies which hire either programmers or software engineers to release statistics proving that they treat men and women equally. I understand pay-gap is not the end-all-be-all yardstick of equality so you can break down the statistics by seniority, experience, or any other metrics you like.
The idea is to compile a list of companies which do prioritize treating people equally so that employees can make informed decisions about where they would like to work. <comment><AUTHOR> (The title doesn't let you write a lot)

I'd like to challenge Silicon Valley companies in particular to release data proving they are not contributing to this problem. You can break down data by experience or seniority level if that explains discrepencies, but I would like to make this a call to action for companies to prove their stance on equality for women. The resulting list will be compiled so that people concerned about these issues will make informed decisions when selecting what companies to work at.

</comment><comment><USER2> I smushed the relevant data & headings together, which should make it a little easier to find. <http://imgur.com/vMoOU>

</comment><comment><USER3> huh?

<comment><AUTHOR> So women who are classified as "Software Developers" on average make 86 cents for every dollar their male peers make, and women classified as "Programmers" on average make 93 cents on every dollar their male peers make.

This is a call to employers who employ programmers or software developers to publish statistics showing they do pay men and women equally. It is a great opportunity to show your company as a good, honest place to work.</comment></comment>


Infiltrating Python's Software Supply Chain - <AUTHOR> https://medium.com/@chetan_conikee/evolving-threat-series-infiltrating-pythons-software-supply-chain-bbab7bcfdb55 <comment><USER2> From a more general security perspective, I've recently been thinking about the attack vector of open source followers. If you are a malicious open source project owner, your project's follower/star list is a goldmine for potential attack targets. Likely the degree that someone likes/watches/follows your project is highly correlated to their use of your project personally/professionally. A bad actor could tailor their attacks based on this information.

<comment><USER3> I run KeyDB which is a medium sized OSS project. Stars and followers go up after we're posted somewhere but it doesn't necessary correlate directly with downloads. It's a best a leading indicator of what our downloads will do over the next month.

I suppose its a better indicator than random, but I don't think it's very useful. You're much better off looking at Stack Share or job postings where this information is given away freely.

</comment></comment><comment><USER4> There are an astonishingly small number of highly underpaid under-appreciated people gatekeeping our daily software diet. Hundreds of components that builds up free software pyramid, everything in and from Anaconda, Python binaries, numpy, pandas, jupyter, OpenXYZ are basically at the whims of some Joe whoes name you don't know, let alone the details of how they are funded or their processes. A state sponcered actor with long term goals can push malicious PRs to any one of these or become a maintainer and take over the global software infrastructure. I'm not sure how long before this grand pyramid built on such fragile security foundation crumbles up.

<comment><USER5> Anaconda is managed by a private company ([https://www.anaconda.com/about- us/](https://www.anaconda.com/about-us/)).

</comment></comment><comment><USER6> Nice write up.

The python software foundation is currently sponsoring work to bring additional cryptographic verification to pypi [https://github.com/python/request- for/blob/master/2019-Q4-Py...](https://github.com/python/request- for/blob/master/2019-Q4-PyPI/RFI.md)

Some additional links wrt to other tools, techniques, and exploits on pypi security [https://python- security.readthedocs.io/packages.html](https://python- security.readthedocs.io/packages.html)

</comment><comment><USER7> The typo-squatting aspect (and the the related recommendation to vendors) seems somewhat beside the point. I think the problem is simply: how can you tell that a package is trustworthy?

The article's scenario, where the victim relies on Stackoverflow answers to judge trustworthiness, would play out the same way without typo-squatting - for example, the Python 3 replacement for PIL is called Pillow. I'm pretty sure Pillow is legitimate, but how do I determine this is general?

</comment><comment><USER8> Today GitHub shows you which other open source projects use your packages, so even if they did not like it explicitly you will know.

</comment><comment><USER9> This really deserves more attention. As an oss contributor myself, I've noticed that almost no one actually reviews your source code, often choosing to blindly trust libraries simply because they're available via the language's package manager.</comment>


How do perceptions of beauty vary across the globe? (2015) - <AUTHOR> https://onlinedoctor.superdrug.com/perceptions-of-perfection/ <comment><USER2> Why not use a character creation screen of some game that has a good one?

You could even average the parameters from multiple submissions.

Actally all the data for it would already there for most games I guess. Just remove outliers and check if there are no competing ideals within countries.

</comment><comment><USER3> Url changed from [https://petapixel.com/2015/08/15/one-woman-photoshopped- by-1...](https://petapixel.com/2015/08/15/one-woman-photoshopped- by-18-countries-beauty-standards-revealed/), which points to this.</comment>


Seatangel double auction airlines vs. passengers - <AUTHOR> https://seatangel.com <comment><AUTHOR> All airlines using the seatangel auction to buy back cheaply sold tickets from passengers with great bump compensations in a double auction. start biiding would ya?</comment>


Ask HN: Best resources for learning about the business side of startups? - <AUTHOR> As a technical founder I'd like to learn more about the practical side of sales, marketing, accounting, legal, recruiting, pricing and etc.
Most of the online business courses and startup books are very high level and don't cover anything useful.
Are there any must read business textbooks, online courses or forums that you recommend?
I'm mostly looking for practical advice on how to handle marketing efforts, which metrics to track, how to not mess up anything on the legal/accounting side and how to handle the sales process (contracts, pricing, pitching, etc).
The best things that I've found so far are the YC lectures, SaaStr and random blog posts. <comment><USER2> Startup School (which is free and run by Y Combinator) will be launching in a few days, which does go into those other areas: [https://www.startupschool.org/](https://www.startupschool.org/)

</comment><comment><USER3> _The Four Steps to the Epiphany_ by Steve Blank.

 _The Art of the Start_ by Guy Kawasaki

 _Zero to One_ by Peter Thiel</comment>


Why liberal arts education matters - <AUTHOR> http://blog.chaddickerson.com/2013/02/03/liberal-arts-matter/ <comment><USER2> >I just think that being successful in a modern society requires a broader understanding of humanity and people, and the liberal arts and humanities are important ingredients

This is what many of us subscribe to. Logical intelligence is important, but so is emotional intelligence: the type of intelligence that empowers us to function collaboratively effectively in a highly networked environment.

Unfortunately, there are those (some very smart) who that college (liberal arts education) is a waste of money and time. They think sending young people to highly, exclusively technical training programs would be better for society.

</comment><comment><USER3> Given 6 weeks of preparation time, I imagine lackluster engineers like myself could test out of a liberal arts degree.</comment>


FaceTime and Why Apple's Massive Integration Advantage is Just Beginning - <AUTHOR> http://techcrunch.com/2010/07/03/facetime-and-why-apples-massive-integration-advantage-is-just-beginning/

<comment><USER2> _sorry, but mobile 4G is not ready for primetime, and I firmly believe Apple won't even include it on next year's iPhone 5_

I'll partly agree with the first part of that statement, but does that mean that HTC/Sprint should have left it out of the EVO? Certainly not. Sprint invested a great deal in its WiMax infrastructure, and releasing a phone that takes advantage of it now brings in much-needed revenue (the added $10/mo + $29 optional hotspot fees), and it increases public awareness of 4G. The HTC EVO is a walking PR machine/proof of concept for 4G, and it just put Verizon, AT&T, and T-Mobile into catch-up mode. I think it was a brilliant move on Sprint's part, and they'll enjoy the benefits for at least the next year or so.

The reason Apple won't include 4G on next year's iPhone is that for better or worse, they are still stuck with AT&T (exclusivity contract expiration aside, there's no GSM alternative, and CDMA is out). AT&T can't even get 3G to run on all cylinders without breaking the network and angering customers. To roll out 4G and charge customers more for it (following Sprint's lead), they would have to offer users a much better experience. The other reason Apple will leave it out is that they need to offer users a compelling reason to get the iPhone 6.

 _FaceTime makes video-calling on the Android-based Sprint HTC EVO look silly, because the EVO awkwardly requires users to sign up and download a third-party app, then launch it every time they want to talk. Normal people simply won't do this._

I whole-heartedly disagree with this. Facetime forces users to only call other iPhone 4 users, and only over Wi-Fi. The HTC EVO might be less convenient in that you have to use Fring or Qik, but these apps are available on multiple platforms (Windows Mobile, Nokia, etc), widening the group of people you can reach. Video chat also works over 3G/4G, which for me trumps iPhone's "instant-on" convenience. Perfect use case was our company's 4th of July BBQ...I was able to use my EVO at the park to video chat, while my coworkers with the iPhone 4 missed out because there was no WiFi (unless they were to connect to my EVO's hotspot).

<comment><USER3> FaceTime is an open protocol: [http://www.readwriteweb.com/archives/apples_biggest_news_vid...](http://www.readwriteweb.com/archives/apples_biggest_news_video_calling_as_open_standard.php)

and

[http://blog.imtc.org/index.php/2010/06/09/the-technology- beh...](http://blog.imtc.org/index.php/2010/06/09/the-technology-behind- apples-facetime-standards/)

<comment><USER2> _FaceTime is an open protocol_

It may be open, but that doesn't guarantee adoption...to date, only the iPhone 4 makes use of it, whereas Fring and Qik already operate on multiple platforms. If Facetime does manage to catch on and other manufacturers adopt it, then the iPhone loses that competitive advantage, since there will be plenty of Android, Symbian, and Windows phones that use it. The other OSes have the advantage of being able to use other standards as well (because Apple will not allow an app that competes with Facetime in its app store).

<comment><USER4> In the next, say, 3 months, will the number of Fring or Qik users be even close to the number of iPhone 4 users?

<comment><USER5> Fring allows video calls with skype who's users surely will outnumber those of the iphone.

<comment><USER6> Skype has around 50 million active users. 5-10 million iPhones sell per quarter. Shouldn't take long to catch up.

<comment><USER7> Where are you getting that number for Skype from? In October, 2009, they had 521 million registered users, and 40 million registered users in the preceeding 3 months: [http://techcrunch.com/2009/10/21/skype-hits-521-million- user...](http://techcrunch.com/2009/10/21/skype-hits-521-million-users- and-185-million-in-quarterly-revenue/) That would indicate to me they likely have more than 50 million active users.

Additionally, when someone buys an iPhone, they are not going to use that phone for the rest of their life. People who already have iPhones will buy new models. Others will migrate from iPhone to other phones. So just based on the number of phones sold, you can't tell when it will "catch up".

Furthermore, as Skype runs on the iPhone (over 3G as well now), iPhone users can also be Skype users.

<comment><USER6> I got it based on the number of active users, not registered users. Everyone who has registered for Skype ever counts as a registered user. I got my numbers here:

<http://aaytch.com/borderless>

You're right that you can't tell when the iPhone will catch up purely based on those numbers. I'd say it's a smart bet, though, that it won't be long. We know that Apple has already sold a few million iPhone 4s, and I'll bet that it sells somewhere in the neighborhood of 50 million before the next iPhone comes out.

You're also right that you can Skype on the iPhone. We don't yet know how good Skype video chat will be on the iPhone, how it will compare to FaceTime, or how many people will use it instead of FaceTime. We also don't know who else (if anyone) will use the FaceTime protocol.

However, we do know that every iPhone 4 comes with FaceTime enabled, that it is trivial to use, and that it is integrated in the phone and contacts at the system level. All of this softens the significance of Skype's apparent head start.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Using video on the mobile seems awkward to me. I'll be interested in seeing some stats about how much this feature is actually used.

</comment><comment><USER8> I feel FaceTime is a step back. ITs like saying BBM (Black berry messenger) is awesome because you dont need to sign in, yet anyone would agree that GTalk or any decent Chat client trumps BBM. The whole purpose of creating an account is to allow portability. Tieing Facetime with Phone number and restricting it only on WiFi is a stupid.</comment>


Order/Pay at Table at Bierhaus, Powered by Apple Pay, Clover, and Estimote - <AUTHOR> http://clover-developers.blogspot.com/2014/10/apple-pay-bierhaus.html

<comment><USER2> this is very clever, but what happens for the alcohol purchase path for ID validation? is the transaction made before the order arrives or at the end of the meal? imagining the situation where a kid tries this, is carded during the service, then you need to refund / cancel.</comment>


Clifford torus - <AUTHOR> https://en.wikipedia.org/wiki/Clifford_torus <comment><USER2> For anyone wondering about the significance of this, the following is my loose explanation: you probably know that a torus is the surface of a doughnut. Better yet, it can be thought of as a square with edges identified (like the videogame screen when you play asteroids: when you reach the top edge you come out the bottom edge at the corresponding place; same for left and right). The latter representation is "better" than the doughnut in the sense that it's symmetric: the horizontal and vertical directions are treated the same. But it has the downside that it requires "identifications"; corresponding points at the top and the bottom represent the "same" point while points in the middle of the screen are unique.

The doughnut representation satisfies uniqueness everywhere, but isn't symmetric: the circles in the vertical direction are all the same size; but if you consider circles in the other direction, they depend on the angle; for instance circles at the top of the doughnut are bigger than the circle encircling the doughnut hole, and smaller than the circle encircling the entire doughnut. You can visualize how this asymmetry happens by turning the square into a doughnut: start with the square above; make it into a roll so that the left and right sides are identified, and then now bend the roll to identify the top and bottom edges: if you bent towards you, then the backside gets stretched a lot more than the front side on the way to forming the full doughnut.

Clifford torus is a way to satisfy both properties (symmetry and uniqueness) at the same time and it's a theorem that one needs to be in 4 dimensions for this to happen.

<comment><USER3> Tori in 4 dimensions are just nicer in general.

<comment><USER2> >Tori in 4 dimensions are just nicer in general.

[https://en.wikipedia.org/wiki/Clifford_torus#Still_more_gene...](https://en.wikipedia.org/wiki/Clifford_torus#Still_more_general_definition_of_Clifford_tori_in_higher_dimensions)

Torus (as in 2-dimensional torus) is nice in R^4, and in general the n-dimensional torus is nice in R^{2n}

</comment></comment></comment><comment><USER4> Ooo, that footnote: "Flat tori in three-dimensional space and convex integration" [https://www.pnas.org/content/109/19/7218](https://www.pnas.org/content/109/19/7218)

Borrelli, V.; Jabrane, S.; Lazarus, F.; Thibert, B. (April 2012), "Flat tori in three-dimensional space and convex integration", Proceedings of the National Academy of Sciences, Proceedings of the National Academy of Sciences, 109 (19): 7218–7223, doi:10.1073/pnas.1118478109, PMC 3358891, PMID 22523238

> It was a long-held belief that ... no isometric embedding of the square flat > torus—a differentiable injective map that preserves distances—could exist > into three-dimensional space. In the mid 1950s Nash (1) and Kuiper (2) > amazed the world mathematical community by showing that such an embedding > actually exists.

> ...

> In this article, we convert convex integration theory into an explicit > algorithm. We then provide an implementation leading to images of an > embedded square flat torus in three-dimensional space. This visualization > has led us in turn to discover a unique geometric structure. This structure, > described in the corrugation theorem below, reveals a remarkable property: > The normal vector exhibits a fractal behavior.

</comment><comment><USER5> I ran across this recently when a 2D based simulator described its world wrapping topology as being a torus. Turns out I took their metaphor a bit too far, assuming they actually considered geometry implications for world wrapping.

Spent awhile digging around until I found a euclidean 2-torus: the Clifford torus which can provide foundations to make the world wrapping metaphor a bit more accurate for flat 2D systems. It's still unknown to me if the authors actually had this in mind when they wrote the description of the wrapping system but it was certainly a fun side trek.

<comment><USER6> I first encountered the idea of wrapping coordinates being equivalent to a torus when playing around with the Game of Life. I assumed that it was a topological equivalence as illustrated by [https://commons.m.wikimedia.org/wiki/File:Torus_from_rectang...](https://commons.m.wikimedia.org/wiki/File:Torus_from_rectangle.gif) \- I did not know there could be geometrically flat toruses!

<comment><USER7> Yes, it is common for 2D lattice simulations to use this topology. The rationale is that boundary effects get smeared across the whole lattice and thus are much smaller than if they were concentrated near, well, boundary.

</comment></comment></comment><comment><USER8> another perfect example of Wikipedia's mathematics pages being unreadable.

<comment><USER9> Totally agree. I understand geometry better than 99% of the population. There's no reason this article should be this indecipherable. Meanwhile, I can read the article on Archaea (having never taken a biology class past high- school) and pretty well grasp what they are.

</comment></comment><comment><USER10> Topology never fails to boggle up my mind.

</comment><comment> ur-whale Does this have any practical application?</comment>


The Economy versus Multicore (or, How Long Can Developers Avoid Multicore?) - <AUTHOR> http://www.cilk.com/multicore-blog/bid/8348/The-Economy-versus-Multicore

<comment><USER2> I voted this article up to bash it.

One quote:

[With "multicore",] a credit card company can run a sophisticated credit scoring model on millions of accounts, or a financial services firm can rebalance a larger volume of client portfolios overnight."

Ummm...who isn't doing these things in a multi-threaded/multi-process way today? Those using COBOL on a mainframe who have bigger problems? Almost anyone running a web server and processing requests is already able to take advantage of a 16 processor system. Databases are already good at running on these boxes, but faster IO and more memory are probably better ways to achieve marginal improvement in the DB space today (said as no expert).

I understand the use cases for (1) really big simulations that are written in a single-threaded way and (2) desktop apps. I'm not an expert in either of these, so I can't comment.

What I find idiotic is the presumption that a large percentage of server processes can't run well as-is on multi-core boxes. I'm a Java guy (pragmatically, not by religion), and anyone running on a J2EE server w/o some single-threaded homespun thingy can probably scale up reasonably given more cores presuming that they can already scale horizontally. Yes, there are exceptions -- mostly with poorly-designed in-house software, but it's the two cases listed above where the most work likely exists.</comment>


Hiring the Right Programmer  - <AUTHOR> http://www.artima.com/weblogs/viewpost.jsp?thread=228097

<comment><USER2> "If a programmer is hardwired to only use emacs or vi (for example) and could never consider using anything else, they may also fight any efforts to do unit testing or use version control or your build system."

If a programmer insists on using vi/vim, that may be a very good sign. I would bet that someone that insists on using a powerful editor is the most likely to do unit testing and use version control and probably already has/does.

Poll anyone?

<comment><USER3> I'm a reasonably hard-core XEmacs user and I'm perfectly willing to admit that it's just stubbornness (and the fact that it's the same on all of the platforms that I develop on). The "strength" argument hasn't been true for some time.

I don't think it says much about me being a good or bad developer. I think the question is more, "When is stubbornness useful"? I'm pedantic about Getting Things Right. That works for and against me.

A lot of these sorts of blogs / essays tend to assume that good programmers are interchangeable. They aren't. Pedantry is a good quality when doing system architecture. It's a bad quality in consulting.

</comment></comment><comment><USER4> #7 make sure you actually have your hackers interview this person. They have a sense for who should be hired or not, which is more valuable than any test.

<comment><USER5> I think that's implicit in the recommendation to test for technical skill. A manager with zero programming experience wouldn't _dare_ trying to assess a programmer's skill, would he?</comment></comment>


Diffen shows comparison tables for almost everything - <AUTHOR> http://www.diffen.com/

<comment><USER2> It does a poor job of comparing a raven to a writing desk. It doesn't know they both have inky quills. Someone with an account should add that answer. ;)

It doesn't know enough about Dali's 'Persistence of Memory' or Botticelli's 'Birth of Venus' to compare them to da Vinci's 'Mona Lisa', but if you ask it to compare the Dali and Botticelli with each other it does a good job of extracting data from Wikipedia to compare them to each other. [http://www.diffen.com/difference/Birth_Of_Venus_vs_Persisten...](http://www.diffen.com/difference/Birth_Of_Venus_vs_Persistence_Of_Memory)

It was fun to try out a few things. One of the poorest matches in my limited tries was chlorophyll vs. xanthophyll. [http://www.diffen.com/difference/Chlorophyll_vs_Xanthophyll](http://www.diffen.com/difference/Chlorophyll_vs_Xanthophyll) . It found nothing for the latter and one of the little bits it know about chlorophyll is 'types: many such as a, b, c etc.'</comment>


Ricing, Vim, i3, and Efficiency - <AUTHOR> https://leotindall.com/post/ricing-vim-i3-and-efficiency/ <comment><USER2> "Ricing" as used here comes from a pejorative which fundamentally comes from using "rice" as a race-based slur for people buying a (cheap) Japanese vehicle like a Honda Civic and then modifying it for looks rather than power or efficiency.

See [https://en.wikipedia.org/wiki/Rice_burner](https://en.wikipedia.org/wiki/Rice_burner) and the many comments on the term in the Talk page.</comment>


VCLjs, a TypeScript RAD framework inspired by Borland's Visual Component Library - <AUTHOR> http://vcljs.com/

<comment><USER2> Requires a .net backend.</comment>


Indinero to close free accounts - <AUTHOR>

Nothing online, but I received the following email:
Dear inDinero User,
I hope this finds you well -- I'm writing to you to let you know about some business model changes we have to make. First off, it's been amazing to have your patience and support over the past two years. Without your help and feedback, our product wouldn't be where it is today.
inDinero has been trying to support a free customer base since launching in 2010, but the costs associated with doing so have gone up considerably since. The company pays a very hefty fee to aggregate financial data, and we lose money on every non-paying user. Because of these unaffordably high costs, I've made the very difficult decision to discontinue our free plan. Many of you have told us that you'd prefer a premium/paid service that can better support a growing product. We agree that this is the direction we need to make, and we hope we have your support during this transition period.
The free product will be completely discontinued on July 31 2012, and real-time data from financial institutions will be limited to our paying customers. As a safety measure, we'll be deleting all transactional data that belongs to non-paying users after this July 31 cutoff date. We've made it very easy to download a copy of your data: simply go to the Transactions Page and press the "Export" link on the bottom of the page.
If you'd like to remain a customer of ours, you can upgrade your account by going to https://indinero.com/upgrade. This should take no more than a minute to do. To thank you for being supportive through this transition, we're offering three months of free service on our paid plan. Just shoot us an email and we'll give you the discount code.
It has been difficult for us to come to this decision, but we're certain that you'll prefer an inDinero that can properly invest in improving its service. On another note, if you're looking for an inDinero-friendly bookkeeper/accountant, please shoot us a reply. We'd love to see how we can help.
Cheers,
Jessica Mah
CEO, inDinero.com <comment><USER2> Makes sense in light of this recent interview of the CEO - [http://hrishimittal.com/post/25990405916/really- interesting-...](http://hrishimittal.com/post/25990405916/really-interesting- interview-of-jessica-mah-ceo)</comment>


GitLab's high-end plans are now free for open source projects and schools - <AUTHOR> https://techcrunch.com/2018/06/05/gitlabs-high-end-plans-are-now-free-for-open-source-projects-and-schools/ <comment><USER2> Competition is a good thing.</comment>


Facebook removes feature that let ads reach 'Jew haters' - <AUTHOR> http://www.reuters.com/article/us-facebook-advertising/facebook-removes-feature-that-let-ads-reach-jew-haters-idUSKCN1BP365 <comment><USER2> Dup: [https://news.ycombinator.com/item?id=15252124](https://news.ycombinator.com/item?id=15252124)</comment>


Ask HN: What's the best way for foreigners to incorporate in the States? - <AUTHOR>

We're a design and development team with a company registered in Europe (Portugal). We have a product we've been selling worldwide (mainly to the US) for quite a while. We've had our problems with being non-US in the past, the main one being not having a merchant account and thus being impossible to signup for Authorize.net (or a similar service).
For the last couple of weeks we've been thinking about incorporating for different reasons: taxes and paperwork. We've been hearing about taxes and incorporating on Delaware, Texas, Nevada and the likes but we'd love to know what you guys on HN would suggest.
Where are your startups based? If in the US, what State? Where would you suggest us to register the company and where should I look into? We're looking for low taxes and almost no red tape, paperwork, invoice requirements, etc... We're developers and designers, we like to build awesome products ;)
We'd love to hear about not only taxing but also about monthly/quarterly/yearly paperwork one needs to fill in and submit on each example you guys know about.
Thanks for sharing. Feel free to link to any resources you know about. <comment><USER3> Hey Guys,

In practical terms, unless you become microsoft it probably doesn't matter which state you incorporate in tax-wise. We received advice saying that Delaware is favorable to business in a variety of legal precedents. Also, Delaware runs incorporation as a business, which makes it easy to take care of things online etc..

Somebody mentioned Wyoming as having less paperwork but I have to say I've never felt there was much paperwork with Delaware.

Without anybody physically present in the US you may need to furnish a bunch of docs - not sure how that would work since we always had one permanent US resident in the company.

In our situation we looked at mixed ownership (US and non US) of a business that had worldwide income (mainly from the US).

Here are the implications of the different US incorporation strategies we came up with. Remember LLCs are flow through (i.e. the LLC does not pay taxes, but it's owners) vs. C-corps that are not flow through (the company itself has tax obligations). Foreign residents cannot own an S-corp (a corporation with flow through treatment).

Incorporation scenarios

1\. Clean US C-Corp

Pro: easy to sell company or assets transparent stock exit is good and clean ability to issue stock options

Contra: Gain on asset sale allocable to U.S. taxed at 35% U.S. federal rate double taxation for asset sales, for U.S. owner (no such problem for foreign owners although there may be tax in your own country) If no asset sale but stock sale instead, purchaser will likely want to reduce purchase price (due to loss of tax benefits) some double taxation for operating profits (some profits from operating income can be offset by bonuses and licensing payments). Double taxation meaning that there is a federal tax on the company and then a tax on any dividends. U.S. corp subject to tax on worldwide income.

How to handle regular operations: Use bonuses and pay for services to zero out operating profits. Compensation paid to non-U.S. persons for work performed outside the U.S. is not subject to U.S. tax. Any dividends paid to non-U.S. shareholders would be subject to U.S. withholding tax - 30% (or less if an applicable treaty applies).

2\. US LLC with Individual Owners

Pro: easy to sell company or assets transparent on asset sale, U.S. owners and Foreign entitled to U.S. 15% capital gains rate for most gain. One level of tax only. for US owners, profits flow to owners as income and charged regular income tax (+ social security and medicare :( ). One level of income tax. "Profits" interests can be issued tax-free, which can share in future distributions and appreciation. Can be referred to as LLC units - <USER2> to shares.

Contra: inability to issue stock options (but can issue profits interests as above) If there are operating profits going to Foreign owners, those owners will be treated as US residents for tax purposes and will be liable to pay full income tax on the profits allocable to the U.S. Also, before any profits are distributed to Foreign owners, the LLC will need to pay to the IRS a 35% withholding tax. However, the Foreign owners can file U.S. tax returns and receive a refund to the extent they are entitled to it. On a sale of assets or LLC units, Foreign owners would be required to pay tax on gain (most at low federal 15% rate)

How we would handle regular operations: Use bonuses and pay for services to sink zero out operating profits.

3\. US LLC with Foreign C-Corp owners (i.e. your Portugese C-corp would own the US LLC)

Pro: Same as in 2.

Contra: inability to issue stock options (but can issue profits interests as above) any tax issues would shift to these C-corps. Each c-corp would owe regular U.S. corporate income tax at a 35% rate on any income allocated to it by the LLC (unless offset by expenses). C corp would also owe a second-level of tax, called the U.S. "branch" profits tax (could be 5% or 15% if C Corp is organized in Cyprus; 30% in BVI or any other country with no tax treaty with U.S. - combined 54.5% rate). But on an exit event and liquidating distribution by the LLC no branch profits tax would have to be paid (this is in comparison with dividends). LLC still has to withhold profits allocated to Foreign C corps at 35% rate.

How we would handle regular operations: Same as in 2.

4\. US C-Corp that licenses an Offshore company's Technologies

Pro: U.S. profits offset by royalty payments to offshore entity (this may be hard to do, since profits might fluctuate wildly, and having accompanying fluctuations in royalty payments would be suspect - could base royalty on U.S. revenues). IRS requires that any royalty be based on fair market value rates. To be protected, an outside appraisal would be obtained. A royalty rate of 10% of gross revenues may be in the ballpark, but would have to be confirmed by an appraiser/industry expert. Maybe your business could justify higher rates. But IRS audits this area closely. Profits of Foreign corp not taxed in U.S. (so long as no services for it are performed in the U.S.) and distributions to non-U.S. owners not taxed in U.S.

Contra: more legal and credibility problems when exiting Difficult to sell assets U.S. has withholding tax on royalties - 30% unless reduced by a tax treaty. Withholding rate for qualifying Cyprus entity - 0%. (For all purposes of qualifying for U.S. treaties, the entities must qualify. For example, if the owners of the Cyprus entity are not Cyprus residents or the entity does not conduct an active business in Cyprus, the Cyprus entity likely would not qualify. In that case, 30% withholding would be required to be paid by the U.S. licensee (if it does not, IRS can impose penalties). (Same for BVI, which does not have a treaty with the U.S.). Bad tax result for U.S. seller of original technology. Under IRS tax rules, a permanent royalty would be imputed. Each year, the U.S. seller would report income based on the performance of the technology (generally, sales revenues) If Foreign corp develops and owns the technology, and licenses it to U.S. company in exchange for royalty, U.S. owner should not hold 50% or more of the stock of the Foreign corp. If it does, 50% of the royalty would pass through to the US owner (called subpart F income). If U.S. owner owns 10% or more of the Foreign corp, and the Foreign corp is not in an active business, then distributions to the U.S. owner will carry a painful interest charge (called PFIC income). If profits are distributed each year, this aspect would not be too harmful (so the profits could not stay in the company to avoid taxation beyond the end of the tax year since the U.S. owner would be liable for them). If an active business and U.S. owner owns less than 50%, these passive income rules do not apply. Key is to determine whether Foreign corp would be treated as having passive income. Both U.S. and Offshore companies have to employ people. The money flowing to the Offshore company is profits only, and will likely not be sufficient to cover significant employee salaries and other expenses; therefore it should be kept to a minimum. However, the Offshore company must employ one or more people to show that it is actually developing that technology for which it is receiving these massive royalties.

How we'd do it: BVI entity holds IP, U.S. entity operates C Corp pays royalties to reduce US profits

Hope this helps. Hit me up if you want to discuss further.

</comment><comment><USER4> The legal part of this is trivial. Form a corporation somewhere. Delaware. Meh. (It is actually slightly more complex than that, but not MUCH more complex).

The tax side of this is nontrivial.

You sound like you are doing this because you have problems extracting money from your customers. In other words, you have a business process problem. If at all possible I would suggest finding a business process solution to your business process problem.

Here's why. You are solving a business process problem with a legal solution. You are pounding nails with a screwdriver. It is going to create a tax problem for you.

A U.S. corporation (formed in Delaware or anywhere else) is a taxpayer. The Federal government will be looking for a tax return from this corporation. (Form 1120, if you want to look at it). Your money collected from your customers will be flowing into that corporation. That looks like taxable income to the U.S. government.

Now you have replaced your business process problem with a U.S. government tax problem. That's an order of magnitude worse. You can solve tax problems, but it takes time and money to do so. That means lawyers and accountants and paperwork.

So now you have replaced your business process problem with a tax problem, and you have solved your tax problem with an "accountants and lawyers and paperwork and overhead and brain damage" solution.

Is it cost-effective? Maybe.

Then the next thing to consider is State income tax. The U.S. has a peculiar set-up for income tax. The Federal government imposes an income tax. Most of the States impose an income tax. Some cities also impose an income tax (stay the F away from Philadelphia and New York, for instance).

Your Delaware corporation must be doing business SOMEWHERE. "Must be somewhere, can't be nowhere." So you need a physical presence somewhere for your corporation, even if it is only a glorified Post Office Box. You put that in a tax-free location. More money.

In summary: sub-optimal.

OK. If you absolutely have to solve a business process problem with a legal solution, look at this as a possible solution:

1\. Check with your tax advisor in Portugal. What type of entity is your company? You want it to be taxed as a corporation as defined in U.S. law. THIS IS ABSOLUTELY ESSENTIAL. (It doesn't matter how your company is taxed in Portugal. We're doing U.S. tax engineering here).

2\. Form a Delaware limited liability company. If necessary, file Form 8832 to have the LLC treated as a disregarded entity.

3\. Get your authorize.net or whatever account in the name of the Delaware LLC.

4\. <the moment of magic> I don't know if this will work or not but if it does, then you win. You want the Delaware LLC to NOT be a "permanent establishment" of your Portuguese corporation as that phrase is defined in the income tax treaty between Portugal and the United States. See Article 5 of the Treaty if you want to be confused. :-)

5\. The impact of NOT having a permanent establishment in the USA? Only Portugal can tax your profits. The USA cannot tax your profits even though they are earned in the USA.

6\. The objective you are aiming for is this:

\- you have a Portuguese corporation deriving profit from U.S. sources.

\- The money pipelines through a Delaware LLC which is disregarded for tax purposes, so it is as if the Portuguese corporation is doing business directly in the USA for tax purposes.

7\. You file Form 1120-F for the Portuguese corporation, and attach Form 8833 claiming the benefits of the treaty.

\- By doing this you are saying to the U.S. tax authorities: "Yes, I have U.S.-source profits but the U.S. can only tax those profits if they are derived from a permanent establishment in the USA and my Portuguese corporation does not have a permanent establishment in the USA. So go bite tires."

That's what I would do.

(I do this in real life but I am not your lawyer, this is not legal advice, you'd be a damn fool to rely on random postings on a website to make critical financial and business decisions, etc. etc.)

Phil.

<comment><AUTHOR> Thanks a lot, Phil. That's a good piece of advice.

The Authorize.net was just an example where we felt like we couldn't relate to everyone else in the industry when searching for a solution for that problem. Now, we've solved that and "replaced" Authorize.net for one of the european companies that do pretty much the same.

So, my post wasn't focused on that specific problem, but on incorporating in the US, mostly because that's where our clients are and if doing it on Delaware would allow us to save a lot on taxes: great ;)

So, the company we have in Portugal could even not relate to the one we would create in the US, by now it is just the common umbrella under which we're been doing business (both client work and that specific product I've mentioned).

<comment><USER5> what European company is that?

<comment><AUTHOR> It's <http://www.paylane.com/> \- I've also heard good things about <http://www.adyen.com/>

</comment></comment></comment></comment><comment><USER6> If paperwork is a concern and you don't really want a substantial USA presence but just a legal toehold and an official bank account, just google "incorporate in #{state}".

The one office you really need is a registered agent, the official place government and courts can get in touch with your corporation and you can pay an attorney to do that and forward you mail for a few hundred dollars a year.

For big businesses, the best state to incorporate in is Delaware because Delaware can handle masses of corporate acts and paperwork and claims and lawsuits efficiently.

For really small operations, the least cost and paperwork will be in Wyoming. You may well never file any paperwork there beyond annual renewal fees.

</comment><comment><USER7> Delaware C Corp. Hands down.

I'm a Canadian and I have done it through DelawareIntercorp.com. They were great. I later sold that company to a publicly-traded company also incorporated in Delaware and everything went very smoothly. Make sure you talk to a lawyer and tax specialist before you do anything though. It could cost you a lot of money if things aren't done right.

<comment><USER8> How about the corporate bank account? There are many sites that help you create a company but almost none allows you to create a corporate bank account for your company, which is needed. For that I think it is still needed to go to the US and do all the paper work yourself. Am I right?

<comment><USER7> This has been very tricky for me. I know a few banks will do it but a) I forgot whom, b) the ones who did were all very inconvenient for me (ie: far). If I remember correctly, Wachovia was one of them.

I decided to try a few banks in upstate New York since it's not too far from here. I've been turned down by a few, namely Key Bank and Citizens Bank.

I ended up opening an account with RBC Bank in Virginia Beach, VA while I was on vacation. FYI, they have branches in Florida too. This is a great way to write off your vacation :) It was extremely easy, probably because they're mainly a Canadian bank and I'm Canadian.

You should call them and see if they'll do it for you. If not, look for an international bank such as HSBC.

On another note, I hired a lawyer to write a proper certificate of incorporation. The default one isn't usually suited for Internet startups that might require external funding, have an option pool, etc. You can see it here: <http://bit.ly/9POOZe> . Feel free to reuse it.

Everything was fine with it during the acquisition so I assume it is pretty darn good.

Hope it helps!

EDIT: The Certificate of Incorporation file also includes a note/warning from my attorney. I thought I'd include it because it is very important.

<comment><USER8> Thanks a lot. Does it matter if the company is in Delaware and its corporate bank account is in Florida or in another state? Do I have to pay taxes in Florida if my company is in Delaware?

<comment><USER7> It doesnt matter if your bank account is not in Delaware. About taxes, I think it'll be different from state to state so I can't tell you.

FYI, I bought 100,000 shares of my own company for $200 when I started. Forgot to mention this in my previous comment.

</comment></comment></comment></comment></comment><comment><USER9> Messing up incorporation is something that is very annoying and time consuming to undo. Talk to a lawyer. I guarantee you the extra money you spend isn't going to make or break your business.

</comment><comment><USER10> I've heard and I hope someone more knowledgeable can confirm that the easiest is to incorporate in Delaware for foreigners. To maintain the Delaware corp you have to pay a franchise tax on the amount of stocks you have issues (for C-corps at least). I'd have to look it up again but up to 5000 shares it's 75$ a year. If the company is not in Delaware then you won't have to pay income taxes.

<comment><USER11> Delaware franchise tax is done two different ways. You pick the method you want to use. The first method is based on the par value of outstanding stock and the second is based on net assets of your company. Delaware will send you a bill using the method that maximizes the franchise tax. You should use the method that minimizes the franchise tax. You can have 10,000,000 shares outstanding at a par value of .0001 and still pay, essentially 0 in franchise tax (or the necessary minimum) if your assets are low.

</comment></comment><comment><USER12> You don't need a US-based merchant account to get a credit card processor. There are lots of UK-based ones, like SecureTrading... surely there must be some Portugese ones?

</comment><comment><USER13> If it's just for accepting US currency, you could try <http://worldpay.com>. It's expensive to setup, and they charge about 4.5% of the transaction, and you have to wait a month after the transaction to get your money... but US customers can and do make purchases via it for us (in Australia).

But most will also happily wire the money. We're selling to enterprise customers mainly (banks etc), so it may be a different situation to you. Actually, I suspect the main reason some of our customers prefer credit card is to circumvent internal purchasing procedures.

Have customers told you precisely what their problem is? (or, can you identify them and ask them?) There may be a simpler solution that incorporating in the States (though I've heard that's helpful to being acquired, that doesn't sound like a concern in the present instance).

</comment><comment><USER14> I know it's not your question, but to the same problem I found <http://www.2checkout.com/> to be the answer. It's roughly comparable to the US based ones... more choice would have been awesome, but it works. Also PayPal.

</comment><comment><USER15> Talk to a laywer and/or accountant, your questions are very common, and any competent professional could answer them.

If you need a referral to a lawyer or accountant, ask friends and colleagues who have a business presence in the US.

</comment><comment><USER16> I think the only option is to set up a C-Corp in Delaware, if you want to be a fast-growing venture business (rather than privately-held small business).

Paperwork is not a big issues because you can find attorneys easily.

</comment><comment><USER17> You can probably use a website such as <http://bizfilings.com> to incorporate Delaware C-Corp. No affiliation.

</comment><comment><USER18> I've used legalzoom to setup a Nevada LLC. Easy and cheap.</comment>


God. I am getting so fed up with Google - <AUTHOR> http://rickwebb.tumblr.com/post/14467269283/god-i-am-getting-so-fed-up-with-google-this-is <comment><USER2> Just compared "chinese food baltimore" search results between Google and Wolfram Alpha.

Google gave me a list of ten places in my area to get chinese food including phone numbers, locations (mapped out and in text) and links to all their websites; Wolframalpha gave me general nutrition information about random foods.

One could go on and on and on, of course, with similar examples.

All that this shows is that some tools are better than others at certain tasks.

Google search is still better than all competitors at many, many things. However, (of course! it ought to be this way!) some of their competitors are better than Google at very specific things.

How is Google's failure to do as well as another search tool at a single task indicative of why Google is (no longer, I think it's implied) any good?

<comment><AUTHOR> Agreed. What made me (and presumably the author) post this article is not the relevance of the result, but how much of the page is now taken up by advertising.

I'm a marketer, so I do certainly like advertising, but what irks me is the sheer vertical volume of the page taken up by monetized ads.

Google does not consider a site quality of the top 1/3 of the page is ads, yet here they take the space on the page which has the most attention. It is their search engine, yes, but at the same time I think no one can argue that they are making the monetized links take up more and more space in order to boost CTR and their bottom line.

They are a company after all, so it shouldn't come as much of a surprise.

</comment></comment><comment><USER3> I would point out that Wolfram Alpha claims gold is at $1577 USD/oz versus $1597 USD/oz on two other gold sites. A big difference? No, absolutely not, but if you want to know the price of gold, you probably want to have faith that they get the gold price right.

<comment><USER4> Gold can easily fluctuate $20 or more within a few minutes. Different sites will always show different prices depending on how quickly they update. Nobody should be using a generic search engine for trading.

</comment></comment><comment><USER5> Perhaps we're moving to a point where rather than use one search engine for everything, we learn how to use the best ones for few distinct categories of searches.

It puts a greater burden on users to know what to look for, but it eliminates the need for some engines to figure out what exactly the user wants.

</comment><comment><USER6> I'm sorry, but are people not able to ignore this? I, like everyone, use Google all the time and I didn't even notice this till now. There are times when pointing out something that could be improved makes the experience worse.

On top of that, isn't this complaint ignoring relevant differences between Google and Wolfram Alpha? In particular, the fact that Wolfram Alpha is funded by Wolfram's other income and Google makes money from its search engine (and therefore needs to put ads in a prominent place).

</comment><comment><USER7> Yes. I also hate it how Google isn't able to read our minds...

</comment><comment><USER8> Keeping in mind that whenever Google displays an immediate answer _interested_ peoples go up in arms about them "favoring their own products" which somehow led to antitrust investigation in EU/US (new developments on that even today), I fundamentally agree that search is about showing the answers instantly and Google must have plans in place for doing so and ignore the antitrust nonsense or else they will be left behind.</comment>


Apple tries to buy out parking meters. Canada city says, "No!" - <AUTHOR> http://www.canada.com/montrealgazette/news/editorial/story.html?id=0675ec00-b793-4699-b99a-cff97d8feb3b

<comment><USER2> As a Canadian citizen (now living in Silicon Valley), I would not be surprised that this action was motivated by the threat of a strike from the Ville-Marie meter-maid union :)

<comment><USER3> Gotta love the meter maids.

And the unions.

Combine them and that's quite the powerful force. _chuckle_

So silly but sad at the same time...

</comment></comment><comment><USER4> I thought parking meters were there to promote turnover and thus make parking a little more accessible. Free parking won't do that, and a no parking zone certainly won't.

In Cambridge, for the same reason, you'll be ticketed if they catch you feeding the meter instead of moving your car. It doesn't matter that you're putting up more money.

</comment><comment><USER5> Everybody assumes automatically Apple is in the right? I wonder, if they allowed Apple to modify the public space in exchange for money, wouldn't they have to allow every other business to do something similar, too? Maybe they were more worried about that scenario.

</comment><comment><USER6> The meter revenue is only part of the story.

The parking fine revenue is probably significantly greater than the fee revenue. I don't know if that is also true of the fine profit.

</comment><comment><AUTHOR> What bothers me the most is when any organization makes the claim that they won't change something specifically for the reason that they have never done it that way before.

<comment><USER7> Undoubtedly one of the greatest blog posts of all time:

[http://www.blogmaverick.com/2005/09/13/because-thats-the- way...](http://www.blogmaverick.com/2005/09/13/because-thats-the-way-we-have- always-done-it/)

</comment></comment><comment><USER8> They said no because Apple didn't bribe the right folks. All they had to do is give away a couple of iPods and then the city would have agreed to their deal.

<comment><USER9> $35,000 is a lot of iPods...

</comment></comment><comment><USER10> > _Really, if Ville-Marie were in charge of designing computers, the world > would still be using quill pens._

Sounds about right.</comment>


Investors must understand that blockchain is the future - <AUTHOR> https://medium.com/@SliceCapital/investors-listen-up-blockchain-not-bitcoin-is-the-future-8faa6337d040 <comment><USER2> You mean torrents were the future? Hmm, they haven't really taken off for too many other uses besides file sharing.. Blockchain - a distributed immutable data block. With no built in consensus model (because its Blockchain not Bitcoin!) How utterly useless. Seriously - blockchain is not a thing. PoW is. PoS is. CAP for distributed databases is.. But blockchain? Stop trying to pump it so hard you tech blogger fakes.

</comment><comment><USER3> You lost me at "it's"</comment>


Hindley-Milner in Clojure - <AUTHOR> http://www.lispcast.com/Hindley-Milner-in-Clojure

<comment><USER2> Last submission: [https://news.ycombinator.com/item?id=7051611](https://news.ycombinator.com/item?id=7051611)

Consider using Shen. [https://github.com/hraberg/shen.clj](https://github.com/hraberg/shen.clj) [http://shenlanguage.org/](http://shenlanguage.org/)

</comment><comment><USER3> if you're interested in this sort of thing, the "language zoo" (a series of mini-languages demonstrating various design strategies) is great

[http://andrej.com/plzoo/](http://andrej.com/plzoo/)

</comment><comment><USER4> And here I was hoping that one of the goals of this was Hindley-Milner type inference for production clojure code (which, for those who didn't look at the code, is explicitly not a goal).

Oh well, cool experiment. I might have to try it sometime.

<comment><USER5> You really have to design your language around HM if you want to use it, and it would disallow a lot of LISP-style coding that really takes advantage of dynamic typing.</comment></comment>


Ask HN: Is there something like HN for successful entrepreneurs? - <AUTHOR> I still love to read HN every day. But I also wish there was something similar for people who already built a successful startup. Something where I can discuss things like: How to spend all those $s. How to invest them. How to reduce taxes. How to travel the world. What are great places and what are great things to do there. What are interesting purposes of life after you have accomplished your financial goals.
I know there are some successful entrepreneurs here like Paul Graham, Gabriel Weinberg and Giacomo Guilizzoni. But they mainly talk about how to make even more money. I would like to think beyond that. How to change the trajectory as Derek Sivers once put it. (And even Sivers mainly talks about business. Looks like its damn hard to really change trajectory).
Any ideas? <comment><USER2> I imagine if there were such a forum, it would not be public like this because membership would imply "I have money" and that makes people a target.

I think a better approach would be to join forums related to specific interests which aren't dependent upon "I have made it as an entrepreneur." An expensive hobby would likely surround you with other people in similar circumstances in terms of financial success, though they may not have made it as entrepreneurs.

<comment><USER3> Why wouldnt that apply here as well? Some successful guys post here. Do they get hassled?

<comment><USER2> I don't think it applies here because the focus is on making money and solving problems, not on "how can I spend my fortune?" However, that doesn't mean that some members don't get hassled. It's entirely possible they do but since I don't have money (I have nothing but debt and have said that repeatedly), I really am not someone who can say for sure if the folks who have made it get hassled by people who meet them through HN.

</comment></comment></comment><comment><USER4> Not an answer to your question, but it is pretty common for people who have "made it" to go traveling for a year or two and then realize they are bored. Then they go back to work. This is pretty common when people retire too. Retire, think they will spend the rest of their life traveling only to find out it gets pretty boring fast.

A lot of people work because they like to work, whether they admit it to themselves or not.

<comment><USER3> > A lot of people work because they like to work

Or because they are wired in a way that they dont know what else to do. I would feel like i have been fallen into a trap if I was to spend my next 10 years trying to build the next company. I want to broaden my horizon.

<comment><USER4> Good point. On one of the "Startups For the Rest of Us" podcast, Rob essentially said the same thing. Paraphrasing:

"It took me a long time to realize I could go on vacation for a month at a time and not worry. I kept thinking 'Shouldn't I be working? Isn't there something I need to do?'"

</comment></comment></comment><comment><USER5> I think it's something that would need to be built from scratch.

One thing to focus on, would be to manually verify all members before granting access.

Unfortunately, it would have to be made by someone who has the connections to make it happen. Because otherwise it won't it'll be dead.

Although, if you've made it, you got the cash to pay for advice from experts. Instead of asking a bunch random people about tax law...you can just hire a good accountant...instead of asking which vacation spot to go to, you can find a good travel agent. etc etc

<comment><AUTHOR> > just hire a good accountant > find a good travel agent

What, no more Web 2.0? Back to the old one-on-one consultations?

<comment><USER5> web 2.0 is to make things affordable...but it's almost always subpar to getting 1 on 1 consultation from an expert

\+ it goes down to opportunity cost...sure you could become an expert after spending hundreds of hours...or you can pay the fee and go back to enjoying your retirement.

</comment></comment></comment><comment><USER6> Try Aman Resorts (<http://www.amanresorts.com>) -- I can personally recommend amansara and amandari.

Then get back to work!

<comment><USER7> I can personally recommend Amankila as well. It's one of those places that leaves you alone all the time, except when you arrive and leave. The management is there to greet you and send you off. They very graciously helped me arrange a number of things outside the normal purview of hotel staff, including a large shipment of custom furniture. They give you the feeling that _you_ are their "boss" while you're a guest there.

I also have similarly great things to say about COMO Shambala in Ubud, Bali.

</comment></comment><comment><USER8> I think <http://onstartups.com> run by Dharmesh Shah is probably the closest thing to what you're seeking.

<comment><AUTHOR> It looks like it also is all about making more money over there.

</comment></comment><comment><USER9> Join The Entrepreneur's Organization. It's excellent, and will fulfill the desires you mention.

<comment><AUTHOR> You got an URL for that?

</comment></comment><comment><USER10> I would love to be a part of something like that, but I don't know of anywhere currently. If you want to get away from "new" entrepreneur, why not built a site called entrepreolder.

</comment><comment><USER11> On a similar note, I'd be interested to know if there's an online forum for wealthy people who are trying to figure out the most effective way to make charitable donations.

</comment><comment><USER12> Quora has many entrepreneurs and intellectuals who are happy to answer questions. It's not anything like HN, but maybe it'll help you.

</comment><comment><USER13> Read the NYTimes Lifestyle section -- it seems tailor-made to helping people spend a lot of money.

</comment><comment><USER14> I've been starting businesses since I was a kid. It is like a hobby, or maybe an obsession. I once started a business without realizing I had done so![1] Once I found the pleasure in selling, I just kept doing it. Once I started having a positive income (e.g.: bringing in more money than I needed to live well) I started investing. I've been investing for a couple decades, it also is a hobby. For the past four years I've been a full time nomad-- working on a startup and traveling full time, living out of a backpack. I have built a half dozen successful businesses, and worked for two dozen startups. I've spent a fair bit of time learning about these subjects and would be happy to share my experiences. I too would like to find a site like this.

The thing is, when you've become successful to some degree, inevitably, your perspective changes. The perspective of those who've achieved some success is very different from those who want to achieve success but haven't, yet.

I don't mean this in an elitist way-- there's nothing I'd like more than to share what I've learned with people who are in the position I was when I was starting out.

Unfortunately, Hacker News is not that place. When I've broached such subjects, the responses have not been of the "I'm interested in learning your perspective" variety, more of the "I'm going to tell you that you're wrong because authority X told me so."

I'm trying to come up with some examples that won't obviously and immediately offend people. But, for instance, talking about how you can invest yourself (one of the OP's topics) often is met with "you'd be better off buying index funds" responses. It doesn't matter that I've been investing myself and getting outsized returns, and found that it really isn't that hard, and I'd love to share the techniques-- the dominant perspective is that individuals cannot beat the market. Or, if you talk about tax mitigation, the response is often along the lines of "you shouldn't do that, you owe it to society". Or if you attempt to explaining what's going on in economic terms but your perspective disagrees with the popular mainstream one (which is keynesianism, or more accurately, krugmanism) you're met with often derisive responses. You know, if economics is a science, it should be able to predict things...and good economists predicted the housing bubble. Even Ron Paul was caught on video in 2001 predicting it.

Anyway, one of the big lessons of business that I've learned, is that economics is important. Perspective is important. Learning about business, and becoming successful really is about changing your perspective.

Unfortunately, due to the organization of this site (stories disappear quickly, detailed discussions are a bit difficult) and the culture, it is hard to share a perspective that disagrees with the majority one.

I once was told my company was not a real startup, but that it was a "lifestyle business".... this from someone that, near as I could tell, had never started a business. Hell, even if it is a lifestyle business... it gave me a fantastic lifestyle! I don't feel that people here on HN want to learn from those who have had success... and as much success as I _have_ had, I really want to learn from those who have had _MORE_.

HN is the closest I've found, for all the seemingly negative things I'm saying about it.... I wish there were a way to change it so that we could share these things.

But if HN is too big of a ship, then I'd be keen to hang out in a private forum. Really, get just a dozen good people there- people who have started businesses and are not ashamed of being capitalists-- and you can have some great discussion.

[1] I was importing tools from china, and because I didn't know their quality, and the price was so low, I tended to buy 2 or 4 of everything figuring they might break. The quality was actually good, so I'd sell the extras, but then without realizing it I started buying more and more every order. I found that keeping four drills around was convenient, as I'd just keep different bits in each one and witch tools, but the next time I ordered, I ordered 4 more drills and then sold them, then ordered 8 extra drills and sold them as well. Same thing with bit sets, and other tools. I was making great markups on the tools, but when I realized what I was doing I stopped because it wasn't really scalable.

<comment><USER2> _there's nothing I'd like more than to share what I've learned with people who are in the position I was when I was starting out._

Mz volunteers to be guinea pig and listen to whatever you want to share. ;-)

Peace.

<comment><USER14> If you name the forum, I'll show up. I also realize that I'm older, and when I was younger, I thought those who were older were completely off the mark-- and from the perspective of someone who is now older, I realize they were on the mark in many ways, but outdated in others.

So, I don't mean to come off like a pompous ass. I'm also keen to learn from the people who don't have as much experience, but do have a different perspective....

I don't think it should be too difficult, all that's necessary is to make arguments over the differences, or ask questions... rather than try and beat people over the head with politics.

Anyway, as for your guinea pig offer, lets see if I can sum up the things I've had to learn the hard way in a very succinct manner, that isn't also highly repetitive of common advice--

\- always have something original to sell

\- investing is made extra easy when your competition thinks they can't win (e.g.: if they think the market is efficient they won't look for opportunities.)

\- you can earn %25 a year with only 5 hours a year of time invested.

\- If you're buying any long term investment, know what your return will be with calculable accuracy _before_ you buy. (Timothy Vick's books on investing like Buffett are good here.)

\- Everyone in the world think their country is special and unique.

\- Get outside of the USA to see how different the world is from how it is portrayed within the USA

\- Internationalize your products. It isn't that expensive and you'll get most of your sales abroad

\- Read "Economics in One Lesson". Economics is really key. Understanding it will give you amazing powers of prediction.

\- People are the same everywhere, but also different. Every new culture you live in, levels you up. You'll be surprised at what you learn. And going and living somewhere for 2 months is much better than the tourist thing. You can get work done while you do it too.

\- Never be involved in a franchise unless you're the one selling franchises.

\- "The Millionaire Fastlane" is a hokey books, and written for seemingly the lowest common denominator, but it contains great wisdom.

\- Atlas Shrugged is the most important book I've ever read.

\- All capitalism works by enriching the lives of your customers. The path to wealth is seemingly "altruistic" because it comes form improving other's lives. They're inextricably intertwined.

\- If 4 out of 5 businesses fail, start 6 businesses.

\- 1 out of 5 businesses fail in my experience, 2-3 break even, and 1 does rather well.

\- This one from fight club: "Hitting bottom isn't a weekend retreat. It's not a goddamn seminar. Stop trying to control everything and just let go! LET GO!"

\- And again: "Only after disaster can we be resurrected."

\- The above two are very taoist / buddhist concepts. You have to let go of you and see what the market says. "hitting bottom" is getting to the point where you take in the response of the market to your product or your idea as the ultimate reality.... you have to let go of your idea that you have a clue what the market really wants. Only after a product launch disaster can you be resurrected as an entrepreneur. Or at least, it was something like that for me. Stop trying to control everything, because doing so keeps you from hearing what the market is telling you.

\- Always be Closing. Ok, too many movie quotes, but they resonate with me.

\- Always have a marketing strategy. Have at least an idea of something that customers will stop and take notice of. Something outrageous could be good- the Virgin method of promotion might work for you. But you gotta be able to wake people up with just a handful of words that immediately resonate with them and make them go "damn, I've been having that problem! Sign me up!"

\- If you value the education you receive from failure, you can't lose in business. That said, might as well go into it whole hog. When you can't lose, it is impressive how much fear you can eliminate.

\- Never start a business that costs more than $4,000 to get going (for the essence of the business. ) Never put in real money... it should either make money on its own right away, or if it requires some investment in technology, it shouldn't require any real capital. People are great at shopping and it is easy to rationalize a lot of spending... don't.

\- Options, if properly used, greatly reduce investment risk, while also boosting returns. Stock options (calls and puts) are the least understood investment vehicle among the mainstream.

\- I never spent money on a book, including a $90 "Due Diligence" book that I barely ever read, that didn't pay for itself many times over, on topics such as investing, business and marketing. Even the bad ones were worth many times the cover price.

I'm sure a lot of that is obvious... maybe I'd be better talking about specific topics or sharing specific experiences.

<comment><USER14> I forgot the most important lesson I've learned:

\-- The reality most people live in, is a complete and total fiction. Most people just have no clue. They operate at a low level of awareness and understanding. The "Jay Walking" segments that Jay Leno used to do illustrate this well. Those are not stupid people, they just aren't aware. To use another movie analogy, they're still plugged into the matrix. Intrinsically, with becoming an entrepreneur is to disconnect yourself from the matrix a little bit. You do want to find out how deep the rabbit hole goes because it is very illuminating. Don't look down on the people still plugged in. The people who google for Facebook so that they can get on Facebook are the market. They're your customers and they may seem stupid, but they aren't. They're just trapped in a narrower perspective than you have. Most of them don't want to be freed. Do your best to help them out with your products, but understand where they're coming from.

The thing about these different perspectives that is really profound is that people who are operating from a different perspective often don't even realize it. That perspective is reality to the best of their ability to understand reality.

Being an entrepreneur means understanding their perspective at least enough to be able to produce products that benefit them... but that means that you've got to break out of it if you're starting from the same perspective they are.

<comment><USER15> This whole thread is amazing and i'm definitely taking notes. The only thing I'd add is that ultimately there is no absolute matrix or enlightened perspective. There are relative layers of perception, eg. a corporate cog realizing that their own vision can be built from just an idea. But then there is also the opposite scenario is just as valid, an independent entrepreneur realizing that working from within the system is often the path of least resistance to bringing about a vision. There is always something we can unplug from.

<comment><USER14> I'd like to explore that thought with you in some detail, but it is hard to do it in this format. I don't think all perspectives are equally valid, as that would seem to be a form of moral relativism... but if you're saying you can always increase your awareness to a higher level, then I agree completely. There's always more to learn, and there's always a perspective that gives you a more complete and fuller awareness of reality.</comment></comment></comment></comment></comment></comment>


Why Fred Wilson is wrong about "DIY data science" - <AUTHOR> http://tech.theswamp.in/post/2013/03/23/why-fred-wilson-is-wrong-about-diy-data-science/ <comment><USER2> At one time people made such elitist arguments about doing arithmetic, too, and now we teach it to children. I think it's Fred who has this right.</comment>


Ambition - AR Adapter to write db queries in Ruby - <AUTHOR> http://ambition.rubyforge.org/adapters/activerecord.html <comment><USER2> It seems to me to be a pointless, hacky kludge. As with every other ORM, the abstraction will leak as soon as you do anything interesting. Even if it doesn't leak, there is mental stress involved with convincing yourself that it won't. And then you still have the performance problems. How does this make life easier?

What am I missing? Is this just for people who need to do "SELECT * FROM comments WHERE articleid=?" and don't want to learn even that much SQL?

<comment><AUTHOR> Well if you put is this way, all is lost: you've already decided it WILL leak. Without checking.

What are you missing?

It's not that user wouldn't know SQL. It's that code like this is more readable because you don't do a mental switch in your brain. I'm all for it: see my story [1] for a take on readability.

Or just accept the fact that there are tools around for mature people who enjoy it. DHH didn't create his ORM for dumb people, he did it because it made his hackin' universe more pleasurable. Some dumb people used it later, but who cares.

[1] <http://inthephase.org/back-to-ruby>

<comment><USER2> As I see it, its easier to mix any subset of procedural, oop, or functional code than it is to mix either of those with relational queries. Operating on query results WITH Ruby is easy. Writing relational queries AS ruby is a big impedance mismatch. There isn't a simple mapping I can hold in my head. Here there be magic, in the form of implicit joins. Also, good luck trying to optimize.

It's not that I've decided it will leak, it's that I can never quite trust that it won't. I would have to continually prove to myself that my code is right. It's a weakness of mine that if I don't 100% understand the code I'm writing, I worry and that slows me down. That code becomes something I can't quite get out of the back of my mind.

Also, I don't buy your readability argument. I can read and think in SQL just fine. Yes, SQL can be complicated, but only when the problem requires it. It maps very directly and naturally on to the problem of querying. There isn't much in SQL that isn't necessary. There isn't much in SQL that is missing. It's already as simple as can be. To make it any simpler makes it worse. Mixing the asking of a question with the processing of the answer makes both parts harder to understand.

Perhaps it is easier to read for some people, but I think that's likely because they just aren't very good with SQL yet. So, this seems to me to make code less readable and more difficult to reason about. I don't see the advantage.

<comment><AUTHOR> Don't use it and don't complain then.

Btw I actively use SQL since 1997 so I guess I have quite a proficiency. Still my point of readability _wins_ , at least for me. So you see, your argument about readability doesn't hold for some people. Mine too, but I _don't_ complain.

</comment></comment></comment></comment><comment><USER3> Looks similar to the work going on with Rails 3. <http://github.com/rails/arel>

<comment><USER4> This works predates Rails 3 by about 2 or 3 years. I would bet it indirectly influenced AR3, and I know it has influenced DataMapper (which I maintain).

One major difference with Ambition is that you're writing the queries in the same code you would when using the normal Enumerable API. IMHO from an interface pov, it's better than any Ruby ORM has provided (or would ever be able to). However, the (big) downside is that it requires ParseTree, which only works on Ruby 1.8. It's also a bit fragile, since if you use code the underlying parser doesn't understand you'll get weird runtime errors.

I created an Ambition-like interface to DataMapper early last year, which uses a similar approach:

      http://github.com/dkubb/dm-ambition/

The main difference (aside from working with DataMapper) is that when the underlying collection is already lazy loaded the block provided is evaluated for each record using the normal Enumerable methods. I believe the Ambition project has a few constructs that make this impossible, but in dm-ambition I set this as a requirement from the start.

<comment><AUTHOR> Very interesting. Thanks for the explanation.

My hacker colleague who lives on the edge with DataMapper says Ambition-like stuff is to be included in DM. Is that related to your gem or a completely different activity?

</comment></comment></comment><comment><USER5> If you're in Ruby and you want a battle-hardned ORM for SQL with a great query-builer, use Sequel: <http://sequel.rubyforge.org/>

Or, if you're in Rails 3, just use Arel, which is part of ActiveRecord.

</comment><comment><USER6> This is pretty much exactly what Thoughtbot's Squirrel does. They decided to discontinue work on Squirrel though.</comment>


Ask HN: Why haven't you built something yet? - <AUTHOR>

<comment><USER2> I've built! www.simbo.com.br a SaaS to Real Estate agencies and agents in Brazil! :)

</comment><comment><USER3> I don't have the technical expertise for my ideas.</comment>