Introductions to advanced Haskell topics - <AUTHOR> http://www.haskellforall.com/2014/03/introductions-to-advanced-haskell-topics.html <comment><USER2> For any aspiring Haskell programmer out there, my advice is to stay away from any blog posts describing Monads using analogies of some kind. The fact is that you do not have to "understand" monads in order to write practical programs that use the IO monad or even something more complicated like Parsec. I've seen too many people stop using Haskell when it's time to start doing something that isn't purely functional because they have been afraid of going to unfamiliar territory.

Here's a simple two part exercise that should give you enough of an understanding about the basics of using IO and give you a general idea about monads.

        1. Write a "guess the number" game
        2. Write it without "do" notation, using (>>=)

That's it. If you're at all like me, this should give you a better start than reading theory about the subject. Now that you have a basic understanding about the practice, it's easier to grok the theory.

And even if you do not understand the theoretical aspects of it by now, you know enough IO to be able to read and write files, connect to the internet using sockets or do some HTTP requests. That opens a lot of possibilities.

<comment><USER3> I've found these Haskell slides useful: [http://dev.stephendiehl.com/hask/](http://dev.stephendiehl.com/hask/)

The slides suggest an "Eightfold Path to Monad Satori":

1) Don't read the monad tutorials. 2) No really, don't read the monad tutorials. 3) Learn about Haskell types. 4) Learn what a typeclass is. 5) Read the Typeclassopedia. 6) Read the monad definitions. 7) Use monads in real code. 8) Don't write monad-analogy tutorials.

I've found this advice helpful. Monads are something you'd probably invent yourself once you know the rest of the language well enough.

<comment><USER4> > Monads are something you'd probably invent yourself once you know the rest > of the language well enough.

Very true. I understood monads far better after I wrote some explicitly state- threaded code (where every function took a state and returned (state, actual_return)), wrote functions equivalent to >>= and return, and then turned the result into a monad.

<comment><USER5> Better yet, isn't that what the State Monad[1] is doing internally?

[1]: [http://www.haskell.org/haskellwiki/State_Monad](http://www.haskell.org/haskellwiki/State_Monad)

</comment></comment></comment></comment><comment><USER6> The first two monad papers, "You could have invented monads" and "Monadic Parsing in Haskell", are terrific.

I think that monads and most monad tutorials are great examples of "this concept is hard because everyone says it is." It reminds me of engineering school, where a lot of people sit around and complain about how hard something is _instead of actually trying to do that particular thing._ Monads really aren't super difficult to grasp, and I wish people would stop making tutorials that only serve to confuse learners more.

<comment><USER7> I think monads may be intimidating at first because it involves an unfamiliar abstraction, and all abstractions take some getting used to.

The good news is since they _aren 't_ complex, once you understand the abstraction, it appears to be very simple in retrospect.

[http://byorgey.wordpress.com/2009/01/12/abstraction- intuitio...](http://byorgey.wordpress.com/2009/01/12/abstraction-intuition- and-the-monad-tutorial-fallacy/)

<comment><USER8> Wikipedia has a pretty good analogy explanation. I like the idea of monads being "programmable semicolons" which are used to inject side effects between purely functional applications.

So if I understand monads correctly then they are basically functions that work like a Unix pipe between functions which takes input data in a monadic container, performs some side effects (I/O for instance), and yields another monadic container with output data that is forwarded to the next function - all that without violating the purely functional character of the whole application chain.

[https://en.wikipedia.org/wiki/Monads_in_functional_programmi...](https://en.wikipedia.org/wiki/Monads_in_functional_programming)

<comment><USER9> _" they are basically functions that work like a Unix pipe between functions which takes input data in a monadic container, performs some side effects (I/O for instance), and yields another monadic container with output data that is forwarded to the next function - all that without violating the purely functional character of the whole application chain."_

That much is true of any applicative functor (which is a superset of monads). The additional power monad gives you is to change up the later portions of that chain based on the earlier results.

Of course, a lot of uses of "monads" don't really make the distinction (and applicative functors are plenty useful).

</comment></comment></comment></comment><comment><USER10> > none of them clearly explain how lenses work

I had taken a stab at this with my lens tutorial[1]. But if you just want to use lenses, Joseph Abrahamson's posts[2][3] are much better. And of course, SPJ's talk is great. He's an excellent public speaker.

> I'm really disappointed that so many critical Haskell topics only have a > single source of truth that is difficult to find.

I found the same thing when I started learning Haskell a few years ago, so I started a blog on advanced topics[4]. Since then there have been a _lot_ of excellent haskell posts. In particular, Stephen Diehl[5] and Christopher Done[6] write interesting and easy-to-read posts. The School of Haskell[7] also has advanced, interactive posts by very smart Haskell folks. So this problem is not as dire as this post makes it sound.

[1] [http://adit.io/posts/2013-07-22-lenses-in- pictures.html](http://adit.io/posts/2013-07-22-lenses-in-pictures.html)

[2] [https://www.fpcomplete.com/school/to-infinity-and- beyond/pic...](https://www.fpcomplete.com/school/to-infinity-and-beyond/pick- of-the-week/basic-lensing)

[3] [https://www.fpcomplete.com/school/to-infinity-and- beyond/pic...](https://www.fpcomplete.com/school/to-infinity-and-beyond/pick- of-the-week/a-little-lens-starter-tutorial)

[4] adit.io

[5] stephendiehl.com

[6] chrisdone.com

[7] fpcomplete.com/school

<comment><USER11> All you need for lenses is SPJ's talk [https://www.mediafire.com/?ra37c2948pw2ye6](https://www.mediafire.com/?ra37c2948pw2ye6)

</comment></comment><comment><USER12> I think that monads are hard for non-functional programmers to grasp for two reasons: They take a different way of thinking, and "monad" is the wrong name.

"The name is wrong?" the Haskell crowd replies. "Not at all! Look at the function signatures, and look at the definition of a monad in abstract algebra! It _is_ a monad!"

Well, any function with the signature a -> a -> a is a magma (per abstract algebra), and those are all over the place in Haskell. But we don't hear much about magmas in Haskell. We _do_ hear a lot about monads. Why? Because monads are magic in Haskell, and magmas are not.

But here's the thing. Monads are magic for reasons that have to do with programming in Haskell, but that really don't have much to do with abstract algebra. _That 's_ why it's a bad name. It's like I told you that something was "an enumerable set of bricks" rather than "it's a three bedroom house". "An enumerable set of bricks" is in fact an accurate description, but it is not a useful one.

<comment><USER13> I agree to an extent, but I think it's a minority opinion. I had a similar point to make about monoids, and would rather see them called "addables" or something similar. Yes, yes, I know, they're not just about adding things... but a great majority of times, `mappend` is used as an adding operation, or something similar (union of sets, concatenating strings, etc). But I didn't receive much support for this view, because "look at the definition of a monoid in abstract algebra! It is a monoid!"

It's this kind of thing that makes Haskell so cool, but also makes it so unlikely that it will ever see real widespread adoption. Haskell is a language based heavily on mathematical theory. There's more of a focus on expressing mathematical concepts and hewing to theoretical correctness than on being practical. Why are there no (real) exceptions in Haskell? Because you can do it with monads. Why aren't there member variables on objects? Because you can do it with functions (or better yet, lenses! a shiny new abstraction to learn!). Why is there no stack trace when a runtime error occurs? This one I don't have a good answer to, but I think it has to do with laziness, which has its roots in theory as well.

I love Haskell and have written several large projects in it. I write it almost every day, currently in the middle of a project with ~1,500 lines of code written over the last month or so. But a lot of it feels like bending over backwards to allow features that would be completely basic in other languages, because of the thing I was talking about above: the _starting point_ is the theory, and the practical comes after. The names of the types are just the tip of the iceberg on this one. There are many great and practical libraries for Haskell (some of which this post's author has written), and many are incredibly powerful, expressive and performant, so it's wrong to say that Haskell isn't "for the real world". But it's really a whole different philosophy than 90% of other languages.

All that said I'm not sure I can come up with a better name for Monad. Context? Pipe? Container? Nothing really springs to mind. It's sort of its own ball of wax.

<comment><USER14> I think Haskell as a community favors more learning over having edges to abstractions. You could call Monoids "Addables" and it would make intuitive sense more quickly, but it would (a) face edge cases later (multiplication is a monoid, as is "take the leftmost argument") and (b) not link to a larger literature of abstract algebra.

That turns a lot of people off, as you mention, since they want the names of things in their language to provide immediate (partial) intuition as to what's going on.

The upshot is that reading Haskell expects more background literature in abstract algebra (or at least a willingness to read the docs for a while to learn a new vocabulary) but suffers fewer intuition breakdowns.

I think that's a general theme of the style of Haskell programming—suffer few intuition breakdowns. It's reinforced by purity, equational reasoning, sophisticated types, top-level annotation style, some parts of laziness, etc. Altogether these pieces fit together to form something unique and interesting.

So that tradeoff of immediate understandability is painful. The community is battling it by (increasingly) building more and more public documentation. Without that tradeoff Haskell wouldn't be as unique and specialized, though.

<comment><USER13> Yeah, I agree. Haskell has an almost unmatched capacity for abstraction and high-level thinking. This can be a double-edged sword, but it has made Haskell pretty much in a class of its own, and a very special language.

</comment></comment></comment></comment><comment><USER15> An introduction to type-level programming should also be on the list, I think—but there are no great blog posts yet about newer type-system extensions in GHC, as far as I'm aware.

You can find some good posts on older techniques and features (phantom types, GADTs), but there's not much out there introducing type families other than material riffing on the papers that introduced them. (The papers are usually quite readable, with well chosen examples, but ...)

For example, there's almost nothing beyond the docs about the tweaks in GHC 7.6–7.8 that make doing computation at the type-level easier. Different type- system extensions can get you many of the same places (e.g., GADTs v. type families, particularly the new closed variety), and I haven't seen much advice about when to prefer one variation to another (hint: it usually helps to think about type-function injectivity/non-injectivity and definitional openness/closedness).

Richard Eisenberg's blog [0] might be the best source of insights on this stuff right now, but as a researcher he's often out closer to the bleeding edge than best suits a beginning type-level hacker.

\-----

Another topic with poor coverage: Template Haskell.

\----

Roman Cheplyaka's post about monad transformers [1] is one of my favorites, by the way. More code than prose, and it's not a from-the-ground-up tutorial, but if you understand the examples, you will understand transformers and why they are actually useful in real-world code.

\----

0\. [http://typesandkinds.wordpress.com/](http://typesandkinds.wordpress.com/)

1\. [http://ro-che.info/articles/2012-01-02-composing-monads.html](http://ro- che.info/articles/2012-01-02-composing-monads.html)

<comment><USER16> Ezyang recently posted about "Haskell for Coq Programmers"[1] which I think explains the limitations of type level programming in Haskell pretty well. It made a lot of sense to me because it explains the features coming from a language with a more expressive type system and what capabilities Haskell has.

[1][http://blog.ezyang.com/2014/03/haskell-for-coq- programmers/](http://blog.ezyang.com/2014/03/haskell-for-coq-programmers/)

</comment></comment><comment><USER7> Simon Peyton Jones took a stab [sic] at explaining lenses in a down-to-earth way

[https://skillsmatter.com/skillscasts/4251-lenses- composition...](https://skillsmatter.com/skillscasts/4251-lenses- compositional-data-access-and-manipulation) (log in to view)

<comment> T-R This was a fantastic talk. Sad that you have to log in to view it now. That was definitely not the case a few months ago.

</comment></comment><comment><USER17> Good post - I book marked this. As a scala dev, I find higher kinded types hard to approach and find practical uses. I'd like to get into haskell just to improve my ability to work in functional programming in the industry as a scala developer. This post was much appreciated.

</comment><comment><USER18> This is great. I love this kind of documentation/tutorial roundup post.</comment>


Ex-Mozilla team behind smart home hub Sense refunds backers, focuses on software - <AUTHOR> http://techcrunch.com/2016/06/08/ex-mozilla-team-behind-smart-home-hub-sense-refunds-kickstarter-backers-focuses-on-software/ <comment><USER2> Definitely interested in the software platform. Have been wary of Echo and Google's new thing due to privacy concerns... you're literally bugging yourself. Having all the logic run locally is a nice breath of fresh air.

Although I wonder if Emerson will force them to change the name, they have a smart thermostat called Sensi. Sense is a really unremarkable and un- googleable term anyway.

<comment><USER3> Your reasons were the same that i had for not wanting to get an echo or google's device. Let's hope this software platform takes off _AND_ that hardware device makers latch onto and run with this!

</comment></comment><comment><USER4> Right now this seems mostly to consist of javascript wrappers around existing platform libraries? E.g. to let me read a gpio pin or blink a led? Not that it's a bad thing but it seems a little skinny as a thing right now, and the pitch seems to be that more and more platform stuff arrives. Smells more like a replay for firefox os less innovating on the platform? Any insights?

<comment><USER5> I just took at look at the linked repo and thought the same. I've tried the node on embedded devices recently and most likely would not go that route again. I would at least recommend to do it in Typescript. However I still think that a big bunch of JS with the usual amount of external dependencies can turn quite fast into an unmaintainable mess if you are not super careful.

Another thing that has to be considered is that that if an OEM then uses this SDK to build his own device his software will be open too (in the sense of extractable in code form, not by license). In my experience most device manufacturers won't be happy with that. But I don't know who Silklabs is dealing with and what their expectations are - so things might be different here.

</comment></comment><comment><USER6> It seems like $100,000 was too low of a goal for their Kickstarter campaign. That's not really enough to justify multiple people working for a year to launch a hardware product. They got $160k, but that's still not enough, which leaves them in this awkward spot.

They should have just set a goal high enough that achieving it would have been a success for them. Kind of true for any sort of goal-setting, but especially committing yourself to selling hardware via Kickstarter.

</comment><comment><USER7> That's kind of too bad.

Are there any other recommended hubs these days that allow a fair amount of programmability? I just returned a VeraPlus since it wasn't very interoperable with my devices, had some distance issues (with no battery to move it to pair) among other things.

</comment><comment><USER8> Why do this "smart home hub" thing reminds me of Apple's attempt at making the Mac the hub of our digital lives, only to get nowhere?

<comment><USER9> The thing about smart home hubs is that you actually need one. Zigbee or z-wave or some other 900MHz channel is a really good way for these smart home devices to talk to each other, and for that to happen you need some sort of radio operating as a 900MHz hub.

It's not just that all these vendors want to be the hub, something has to do the communication.

<comment><USER10> I'd say that recent developments in long-range low-power radio networks (like LoRa, but see the list at [https://en.wikipedia.org/wiki/LPWAN](https://en.wikipedia.org/wiki/LPWAN)) might change this.

Of course it still makes sense to many here to run their own gateway for reasons of privacy and control, but perhaps the market at large could go for city-wide third-party networks, or something. Of course not everyone lives in cities, but perhaps shared networks might work in more rural settings, too.

</comment></comment></comment><comment><USER11> Edit: Disregard this comment, my mistake.

Mozilla is such a disappointment. Instead of focusing on their raison d'etre they're busy branching out to one unsuccessful venture after another.

<comment><USER12> How is employees leaving and starting a startup a failure of Mozilla?

<comment><USER11> Oh, wow, you're right. My brain completely ignored that "Ex-" at the beginning.</comment></comment></comment>


Geek business myths (2006) - <AUTHOR> http://blog.rongarret.info/2006/10/top-ten-geek-business-myths.html

<comment><USER2> Here are the myths from the post, which the author explains. If you believe any of them, you'll probably benefit from reading the explanations, which I found helpful and brief.

Myth #1: A brilliant idea will make you rich.

Myth #2: If you build it they will come.

Myth #3: Someone will steal your idea if you don't protect it.

Myth #4: What you think matters.

Myth #5: Financial models are bogus.

Myth #6: What you know matters more than who you know.

Myth #7: A Ph.D. means something.

Myth #8: I need $5 million to start my business

Myth #9: The idea is the most important part of my business plan.

Myth #10: Having no competition is a good thing.

Special bonus myth (free with your paid subscription): After the IPO I'll be happy.

<comment><USER3> no #1 relating to employment is "I don't need to worry there is a law against that isn't there"

<comment><USER4> What?

</comment></comment></comment><comment><USER5> Myth #11: Luck isn't a factor.

<comment><USER6> Is it luck, or is it timing? Why should you launch THIS business NOW? What technology or market discontinuity is enabling your new thing to thrive?

<comment><USER7> It's both. There are many things you can do to improve your odds, including being in the right place at the right time, but at the end of the day there are a thousand random factors that you can't control that can make or break a business. And even among things you can control, many things that are obvious in retrospect are far from clear at the time that decisions need to be made.

</comment></comment></comment><comment><USER8> Competition is evidence that people want what you're selling. And even if there's no competition at first, if people do want it, there soon will be.

I think a key idea is to make sure everybody who wants your thing can have it. Otherwise, you create a gap for competition to fill. This is a nice alignment of ultruism and competitive advantage... and more common than you might think.

</comment><comment><USER9> You heard the man... Now back to work for me.</comment>


Apache releases OpenOffice 3.4 - <AUTHOR> http://www.openoffice.org/news/aoo34.html <comment><USER2> Could someone please summarize which of LibreOffice or OpenOffice is more useful to follow and why?

<comment><USER3> I'd follow LibreOffice, it's more feature rich, plus LibreOffice is licensed under the Mozilla Public License and LGPL3, which means OpenOffice won't be able to use all the progress LibreOffice has made. I have a feeling OpenOffice has a very short lifespan at this point. I am however in no way an expert on either of the two, this is just what I have read over the months.

<comment><USER4> Can LibreOffice use the improvements to OpenOffice? If so, it seems like the relationship could become quite one sided with LO able to pull in all the fixes to OO and use that to move further ahead, but with OO unable to re-use any of the LO work.

<comment><USER5> OO uses the Apache License, which would allow LO to pull any change it wants. Of course it doesn't work the other way around, because LO's licenses are more copyleft. So you're right, it could get quite one-sided.

</comment></comment></comment></comment><comment><USER6> I've been a little frustrated with OpenOffice/LibreOffice recently, as it seems like there's something about the way text is rendered when printing (maybe onscreen, too) that is just kind of ugly. The spacing isn't wrong, it's just blah somehow. Am I just imagining things, or is there something going on? (And if so, can I fix/work around it?)

</comment><comment><USER7> Perhaps off topic but I really wish Apache would update the look and feel of their websites. Most, including this one look like a mailing list reader from 1999. It probably doesn't matter as much for technical projects but for something like OpenOffice with theoretically larger market appeal it could turn a lot of perspective users away.

</comment><comment><USER5> It seems like they finally dropped the silly ".org" from the product name. It's "Apache OpenOffice" now.</comment>


Google-Hotel Travelopoly: Google works with hotels to hurt travel competition - <AUTHOR> https://www.wsj.com/articles/google-hotel-travelopoly-1514419414?mg=prod%2Faccounts-wsj <comment><USER2> [https://news.ycombinator.com/item?id=16020679](https://news.ycombinator.com/item?id=16020679)

This was already posted earlier, no reason at all to have this posted again.</comment>


Apple developed 7-inch iPad alongside current model - <AUTHOR> http://www.appleinsider.com/articles/10/10/08/apple_developed_7_inch_ipad_alongside_current_model_rumor.html <comment><USER2> It sounds perfectly feasible to me. Apple is no stranger to prototyping.

That doesn't mean it's gonna be shipped any more than that code you've written for that new project idea you were exploring.</comment>


Could We Colonize Another Planet? - <AUTHOR> https://sparkonit.com/2016/02/17/space-colonization-colonize-another-planet/ <comment><USER2> No.

A similar, but much easier task than colonising Mars, would be to colonise Antarctica. We've had the technology to do so for at least a hundred years or more. But apart from a few very isolated groups, nothing has been done. We have not had the cash or the inclination to colonise Antarctica -no permanent cities or factories- in all that time.</comment>


India's Plan to Bring Digital Banking to 1.2B People - <AUTHOR> http://www.bloomberg.com/news/articles/2016-04-10/india-s-audacious-plan-to-bring-digital-banking-to-1-2-billion-people <comment><USER2> Here's an anecdote about India.

They started requiring customer authorisation on all card transaction recently (signature doesn't cut it and no Paywave for you). There were reports on how that that forced Uber to use local payment gateway.

Anyway, couple months ago I was in Chennai, went to a restaurant with a customer and when the bill came which customer didn't give me a chance to pick up, they handed over a card AND a PIN number for the card.

I was shocked, naturally. The customer explained to me this is standard practice and "a requirement" now for locally issues cards.

It isn't really, but since most terminals are wired and installed at the checkout counter, Customers aren't invited to enter the PIN over at the other end of the venue and aren't keen to, frankly. It is upper class who uses cards for payments and psychologically and culturally they're expecting a full service. Walking to the terminal to enter a PIN is a bit of a "walk of shame".

So, that's how best government intentions turn into known, en-masse and country-wide security hole and a direct breach of banking service contract, that requires customer to keep PIN private and waives any responsibility if PIN is shared.

I would not at all be surprised if this 12-digit personal API ID will be shared just as easily as a card PIN.

<comment><USER2> Thanks for clarifying, peeps! As you understand, I'm selling it at what I bought it for, merely retelling what I've been told. In this particular case, bill was definitely more that $20 and to my knowledge, there was not 2-step auth, just a notification.

I definitely seen it more than once and it also does seem to me that wired terminals are still quite common, but I might be wrong since I, naturally, pay with foreign bank's card and don't have to punch in a PIN.

Afaik, fully cloning a chip card is fairly easily done with a cloning device, one of those you might have seen hooked up to an ATM.

And I'm happy that you guys seem to be content with the way things are. I'd be totally paranoid having to share my PIN even once, ever. I mean, after that some one should be able to withdraw tons of cash and after I see the notification, bank would be in their full right to refuse reimbursement on the grounds that I shared my PIN. And they'd be absolutely right.

Cheers!

<comment><USER3> > I'd be totally paranoid having to share my PIN even once, ever. I mean, > after that some one should be able to withdraw tons of cash and after I see > the notification, bank would be in their full right to refuse reimbursement > on the grounds that I shared my PIN. And they'd be absolutely right.

Well, most of us have a separate account for making small transactions like these. Even if it gets misused I won't lose much.

</comment></comment></comment><comment><USER4> The plan is based on a national identity system with 80% penetration:

> So far, India's attempt to assign every citizen a unique 12-digit number > associated with a person's unique iris, fingerprint or facial features, is > succeeding—just last week, Aadhaar reached its milestone of registering 1 > billion people. With more than 80 percent of Indians enrolled, it gives the > payments system a solid base to build on.

This reminds me of an article I read awhile back talking about the things that technology has made disappear. Farms. Factories. Horses. Many diseases. And so on. It ended with the question: what fixtures of current life are likely to disappear in the future?

A commenter responded with one word: "privacy."

<comment><USER5> I held off for a very long time. I realized finally that if it is OK for me to give these details to foreign governments ( for visa ) atleast I should not be so uneasy about giving it to the Indian government which ( at least theoretically ) have the responsibility to defend my interests.

<comment><USER6> Banks can't arrest you for violating bogus immoral crimes. Your government can. You should be much more afraid of the government violating your privacy than your banks.

</comment></comment></comment><comment><USER7> Seems like India is leap-frogging way past where the U.S. financial system is. On the other hand, I worry if all this personal ID data got hacked.

<comment><USER8> India is way ahead of the US financial system. I am a student here in US and I can't really fathom how bad the US financial system is.

\- Intra bank wires / transfers are free and happen within 10s

\- Cheques are free

\- You don't have a system where you can lose all your money if you give your handwritten cheques to somebody (who came up with echeques anyway?)

\- You don't get charged to have a checking account. They pay you interest for your account.

\- Get a message about every transaction, every withdrawal that you do immediately.

<comment><USER9> I'm not going to argue against the general thesis that the US banking system is antiquated, but I gotta pick these nits:

\- Checks are usually free in the US.

\- You don't usually get charged to have a checking account in the US.

\- The lack of interest on most US checking accounts is due to the very low inflation rate and nearly zero federal rate. Adjusted for inflation, what is the interest rate of your Indian checking account? Back in the 70s when inflation was high in the US checking account that carried interest were not uncommon. I do seem to remember that they were called something else, but I can't remember right now.

<comment><USER8> \- You don't usually get charged to have a checking account in the US.

I have to maintain a minimum balance of 1500$ for the checking account to be free.

>> \- The lack of interest on most US checking accounts is due to the very low inflation rate and nearly zero federal rate. Adjusted for inflation, what is the interest rate of your Indian checking account? Back in the 70s when inflation was high in the US checking account that carried interest were not uncommon. I do seem to remember that they were called something else, but I can't remember right now.

Agreed. I got carried away trying to make a point :).

<comment><USER10> Pick a different bank. Almost every bank I walk by offers free checking with $100 balance, or even less

<comment><USER11> Pick an even better bank and you have no fees, non-negligible interest, and free ATM withdrawals with fee reimbursement worldwide. You'd have a hard time finding many other banks in the world that offer that.

</comment></comment></comment></comment></comment></comment><comment><USER12> People were forced to get UID by misinformation. The people were led to believe it was compulsory. Only by intervention of the supreme court, the govt was forced to admit it was optional. This was introduced undemocratically without legislative back up with an executive order. An example of corporate insensitivity to democracy. BJP pretended to be against UID before election. Now they have conveniently forgotten their stand.

Now there is legislation for UID, but this was introduced by deception. It was introduced as money bill in parliament, so that rajyasabha could not discuss it(BJP has majority in loksabha). Money bill can only deal with govt finances but it is now used to give approval for data collection, which needs constitutional amendment in a real democracy. This is again undemocratic and fascist. The stated aim of biometrics was to avoid duplication. but by insisting on 10 fingerprints and iris, the real aim is data collection itself. But they are really not sure UID biometrics is enough to avoid duplication, there is condition like you can only apply for it once. UID is successful by deception, ignorance, and undemocratic methods.

</comment><comment><USER13> Exciting, but I'm wary of journalism that presents no critical voices.

This was interesting:

 _Srikanth Nadhamuni, chief executive officer of Khosla Labs, said the best way to think of the project is by comparing it to how shampoo was introduced in India. Decades ago, most people couldn 't afford to buy an entire bottle of shampoo, so Unilever, Procter & Gamble and other companies sold them in small sachets that people could afford to buy, paving the way for marketing everything from detergent to toothpaste in rural areas. Nadhamuni is betting that the new digital payments system will be be low-cost, high-volume, like a "shampoo-sachet revolution in the financial sector."_

Perhaps this tech could help with micropayments elsewhere.

<comment><USER14> Funny reading that, multinationals introduced relatively useless products to the masses using small quantities they could afford. The first hit is free.

This is more about control then actually improving anything. India still has problems with terror that could be better tracked if all finances could be scrutinized. Corruption too. If we can only get Pakistan to do the same.

<comment><USER13> Why are toothpaste and shampoo "relatively useless"? I believe there are many health benefits to using them.

I don't know for sure, however, because I've never tried going without them for long ... let me know how that goes.

<comment><USER15> Shampoo is maybe useful. Some sort of soap + scalp action, occasionally, is beneficial. Plenty of people in the west don't use shampoo or use it rarely.

You don't really need toothpaste. It's the brushing part that's good for removing detritus from your teeth.

Edit: Downvote with no comment? How is this comment non-constructive, so I can avoid doing it in the future?

<comment><USER13> I didn't downvote you, but perhaps somewhat extraordinary claims require a little evidence.

<comment><USER15> They aren't especially extraordinary claims.

[https://en.wikipedia.org/wiki/Shampoo#No_Poo_Movement](https://en.wikipedia.org/wiki/Shampoo#No_Poo_Movement)

[https://www.quora.com/How-much-less-effective-is-brushing- yo...](https://www.quora.com/How-much-less-effective-is-brushing-your-teeth- without-toothpaste)

</comment></comment></comment></comment></comment></comment><comment><USER16> I take it this plan is going to be executed by the 2% of Indian programming graduates who are employable.

</comment><comment><USER17> In a country where genocide and sectarian violence are a regular occurrence†, I am sure that a detailed database of religious affiliation, biometrics, photographs, and addresses won't be misused.

Much like the Dutch census, history will look back at this registry of citizens with horror.

† [http://time.com/3545867/india-1984-sikh-genocide- anniversary...](http://time.com/3545867/india-1984-sikh-genocide-anniversary/)

[http://www.theguardian.com/commentisfree/2014/apr/07/narendr...](http://www.theguardian.com/commentisfree/2014/apr/07/narendra- modi-massacre-next-prime-minister-india)

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

[http://www.bbc.com/news/world-asia- india-30288169](http://www.bbc.com/news/world-asia-india-30288169)

[https://en.wikipedia.org/wiki/Anti- Christian_violence_in_Ind...](https://en.wikipedia.org/wiki/Anti- Christian_violence_in_India)

[https://en.wikipedia.org/wiki/Violence_against_Muslims_in_In...](https://en.wikipedia.org/wiki/Violence_against_Muslims_in_India)

<comment><USER18> Since you conveniently decided to not show violent acts against Indian Hindus, here are some links on Anti-Hindu violence for sake of completeness.

[https://en.wikipedia.org/wiki/Christian_terrorism#India](https://en.wikipedia.org/wiki/Christian_terrorism#India)

[https://en.wikipedia.org/wiki/Category:Islamic_terrorism_in_...](https://en.wikipedia.org/wiki/Category:Islamic_terrorism_in_India)

[https://en.wikipedia.org/wiki/Religious_violence_in_India#Re...](https://en.wikipedia.org/wiki/Religious_violence_in_India#Religious_violence_against_Hindus)

[https://en.wikipedia.org/wiki/Ethnic_cleansing_of_Kashmiri_H...](https://en.wikipedia.org/wiki/Ethnic_cleansing_of_Kashmiri_Hindus)

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

Mostly Islamic terrorism [https://en.wikipedia.org/wiki/Terrorism_in_India](https://en.wikipedia.org/wiki/Terrorism_in_India)

[https://en.wikipedia.org/wiki/Category:Violence_against_Hind...](https://en.wikipedia.org/wiki/Category:Violence_against_Hindus)

[https://en.wikipedia.org/wiki/Anti- Hinduism](https://en.wikipedia.org/wiki/Anti-Hinduism)

<comment><USER19> I think GP was pointing out the fact that people in power are infact hindu nationalists who can misuse power. Islamic terrorists are not in power, hindu nationalists are.

<comment><USER18> I didn't know opinion articles from The Gaurdian count as facts. The other wiki pages about Christian Church burning has no link to the government in power. Not sure what the implication was there. The Sikh riots did not have a religious motivation, rather a fallout of operation Bluestar and the resulting assassination of Indiri Gandhi (A congress leader, the party which is supposedly far left on cultural issues. Their party members killed 2500+ Sikhs in 1984.) Not sure what the connection to BJP there was either.

According to this:

[https://en.wikipedia.org/wiki/Assault_on_T._J._Joseph](https://en.wikipedia.org/wiki/Assault_on_T._J._Joseph)

it was a Muslim who cut off a Christian professor's hand in South India. His wife committed suicide because he was fired. Of course BBC, Gaurdian, Firstpost and all other far left websites will not report this. On censorship happy sites like HN and reddit they have successfully created massive propaganda against the Indian government. I can spout nonsense as facts too. Here are example of some 'facts' for you then:

Maybe Obama is a Muslim according to this: [http://www.conservapedia.com/Obama's_Religion](http://www.conservapedia.com/Obama's_Religion)

Maybe Merkel is a traitor according to this: [http://www.breitbart.com/london/2015/10/29/hundreds- germans-...](http://www.breitbart.com/london/2015/10/29/hundreds-germans- trying-bring-treason-charges-angela-merkel-migration-policy/)

Maybe Bernie Sanders is a communist according to this: [http://nypost.com/2016/01/16/dont-be-fooled-by-bernie- sander...](http://nypost.com/2016/01/16/dont-be-fooled-by-bernie-sanders-hes- a-diehard-communist/)

OP is parroting the conspiracy theory that millions (still a small % compared to India's billion+ population) do because they cannot digest seeing Modi in power. I can go full conspiracy mode and point out who owns left wing media outlets but I don't think HN is a place for such discussions. There are hundreds of report of Hindus being killed in minority rich areas in India, but unfortunately these incidents aren't covered in BBC and Gaurdian because Hindus are a dying majority in India.

<comment><USER20> >because Hindus are a dying majority in India.

Curious what you meant by that. Care to explain?

<comment><USER21> Hindus have always been the majority on the Indian subcontinent (around 90%), similar to how the majority of Americans (after the 1700s) have been white. The prime worry of the Hindu population seems to be that gradually they would represent smaller proportions of the overall population. The reasoning behind this is that although you can convert to other religions, it isn't possible to convert to Hinduism. In 1951 Hindus were 84% of the population. In 2011, that had dropped to 79%. [1]

With the loss of majority status, it becomes difficult to dominate the political discourse like Hindus do today. Just like how it was impossible to think of a non-white person becoming President of the US, it is also impossible to think of a non-Hindu holding any serious power in India for the foreseeable future.

Note for those unfamiliar with India - the language Hindi is unrelated to the religion Hinduism. Its possible to be a Hindi speaker and not a Hindu and also possible to be a Hindu and not a Hindi speaker.

[1] - [https://en.wikipedia.org/wiki/2011_Census_of_India](https://en.wikipedia.org/wiki/2011_Census_of_India)

<comment><USER22> It is always possible to convert to Hinduism. There is no authority that decides if you are Hindu or not. You just are if you believe that you are.

Lets I digress. You can be a Hindu today if you want. Just start incorporating Hindu philosophies in your life. Choose an atheist one if you like.

PS: Not advocating anyone to convert to Hinduism. In fact I think that the lower castes should abandon Hinduism if the upper castes don't reform fast enough.

</comment></comment></comment></comment></comment></comment></comment><comment><USER23> [http://financialaccessatbirth.org/](http://financialaccessatbirth.org/)

</comment><comment><USER24> Audacious plan? That would be getting their 1.2 Billion people reasonable access to fresh water and indoor plumbing.

<comment><USER18> So any other plans should be put on hold while doing this?

Access to sanitary facilities has been one of the prime agendas of Modi's elections and he is delivering on it too.

[http://qz.com/505276/narendra-modis-most-popular-move-so- far...](http://qz.com/505276/narendra-modis-most-popular-move-so-far-sending- millions-of-indians-to-the-toilet/)

<comment><USER24> Sigh. No, I did not suggest that all other initiatives should be put on hold. The pivot, fulcrum, etc. for my comment was the use of the word "audacious" in the article title. Since the use of brevity has... muddied the waters:

I don't think the deployment of yet another digital payment method that allows for the highly centralized storage of personal information, in a country that does not yet have enough toilets (yes, there is an initiative under way) or reasonable access to fresh water, qualifies as audacious.

I suppose I may have pulled up short on the Audacity Scale by copping low with sewage and water, instead of mentioning crime and air pollution.

Of course, YMMV.</comment></comment></comment>


Show HN: AWS Cost Reports Right in Slack with CloudForecast - <AUTHOR> https://cloudforecast.io/slack.html <comment><AUTHOR> Tony here! One of the co-founders of CloudForecast. We provide a daily report that breaks down your AWS spend, allowing you to understand where your money is going. Our reports are easy to read and helps your team ensure AWS costs do not spiral out of control.

We launched last summer on ShowHN, got a few customers and great feedback from the community: [https://news.ycombinator.com/item?id=17551796](https://news.ycombinator.com/item?id=17551796)

We just recently launched a new feature that brings our AWS cost reports into your Slack. We've been beta testing this for 2 weeks with our customers and we're seeing different organizations (tech and non-tech) collaborate and discuss our reports. It gives a way for your whole organization to have more awareness around AWS cost.Pretty neat to see our product being used in a different way then we thought it would!

Hacker News Special: We'll double the length of your free trial for the next week if you let us know you're from HackerNews in our sign up form.

Happy to answer any questions or hear feedback. Looking forward to hearing from you all!</comment>


Micro languages in Clojure via macros and let - <AUTHOR> http://will.groppe.us/post/943063292/micro-languages-in-clojure-via-macros-and-let

<comment><USER2> In most general of terms a programming language would be ideal for a problem domain if the domains problems could be expressed directly in the language. You would sit down with the domain experts and have a conversation, that conversation could be converted directly to code. In fact if the language was expressive enough the experts could express the problems directly to the computer. No current language, that I'm aware of, achieves this goal. However Clojure by nature of it being a Lisp, allows you to easily add to the language to bring it closer to the domain it will be used in.

It's certainly no silver bullet, and does add to the learning curve of new programmers, but if used properly can be a great tool for writing concise and correct code.

<comment><USER3> My problem is that the code linked in the article looks ugly as hell. Even the micro-language created.

Compare this ...

        (filter (and (< :table1/a 5) (= :table1/b "x")) (collect :table1))

To this ...

        from row in table1
        where row.a < 5 and row.b == "x"

Also, compare this ...

        (collect :projects :invoices [:projects/id :projects/name
               (as :inv_id :invoices/id) :invoices/date])

To this ...

        from proj in projects
        from inv in invoices
        select { proj.id, proj.name, inv_id => inv.id, inv.date }

For me the ideal programming language would be one readable by humans.

<comment><USER4> But can the sql be made to work w/ a non-sql storage engine? The lisp code facilitates this abstraction while raw sql is just that.

<comment><USER3> That's not sql ... that's Linq from .NET. You can query with it whatever you want: in-memory data-structures, DB, Xml, LDAP.

Here's a MongoDB provider that has basic Linq support: <http://github.com/samus/mongodb-csharp>

Of course, the actual syntax of LINQ is baked in the compiler's rules, and you can't invent new syntax in the way LISP lets you to.

But why is that have to be the case? There's nothing stopping a compiler from being extensible, other than hard-work. I played with Boo for a month ... it comes very close to that. Perl6 also lets you do it, but it remains to be seen how good it is.

<comment><USER4> touche, I should have studied your examples longer as the second one it is clearly not straight sql. I have always been a bit jealous of linq and I agree there should be a language which allows the compiler to be extended. Smalltalk allows this to some degree particularly the research done by SCG: <http://scg.unibe.ch/research/helvetia/examples>

</comment></comment></comment></comment></comment><comment><USER5> Cool, but what about code maintainability? Why add microlanguages? I'm sure your microlanguage is superintuitive to you, because you wrote it, but I, as a new coder on your code, don't want to learn it.

<comment><USER6> > I'm sure your microlanguage is superintuitive to you, because you wrote it, > but I, as a new coder on your code, don't want to learn it.

I'm sure your API is superintuitive to you, because you wrote it, but I, as a new coder on your code, don't want to learn it.

I'm sure your library is superintuitive to you, because you wrote it, but I, as a new coder on your code, don't want to learn it.

<comment><USER5> Mmm. No. It takes longer to learn a language than an API, in general. I don't think I'm wrong about that?</comment></comment></comment>


How Facebook and Twitter are rushing to stop voter suppression for midterms - <AUTHOR> https://www.washingtonpost.com/technology/2018/11/02/how-facebook-twitter-are-rushing-stop-voter-suppression-online-midterm-election/ <comment><AUTHOR> Original title: "How Facebook and Twitter are rushing to stop voter suppression online for the midterm elections"

</comment><comment><USER2> are they doing it by suppressing right wing sites?

<comment><USER3> No. Right-wing bots are tweeting out misinformation (wrong dates, etc.) about the election to decrease turnout. This happens sometimes in the real world and seems to happen online too.</comment></comment>


Lyft Is Donating $1M to the American Civil Liberties Union - <AUTHOR> http://www.theverge.com/2017/1/29/14429452/lyft-donating-1-million-american-civil-liberties-union <comment><USER2> Move fast and donate to non-profit organizations?

That looks a lot more like "taking a stand" than Travis Kalanick's: _We are working out a process to identify these drivers and compensate them pro bono during the next three months to help mitigate some of the financial stress and complications with supporting their families and putting food on the table. We will have more details on this in the coming days._

</comment><comment><AUTHOR> Well timed with #deleteuber going around: [https://twitter.com/i/moments/825559420914409473](https://twitter.com/i/moments/825559420914409473)

<comment><USER3> For convenience, here's a direct link to the Uber help site for deleting your account: [https://help.uber.com/h/24010fe7-7a67-4ee5-9938-c734000b144a](https://help.uber.com/h/24010fe7-7a67-4ee5-9938-c734000b144a) (They even give you a nice box to explain why)</comment></comment>


Old people are an increasing burden. Must our young be the ones to shoulder it? - <AUTHOR> https://www.theguardian.com/science/2019/apr/27/ageing-retirement-work-taxation-social-care <comment><USER2> These sorts of articles seem to be primers for a socialist government and a scary reminder that there is no utopian fantasy.

So the answer to a crumbling system (because this is what happens with most socialist systems) is that we kick out the old people? really?</comment>


U.S. sues Oracle, alleges salary and hiring discrimination - <AUTHOR> http://www.reuters.com/article/us-oracle-usa-labor-idUSKBN1522O6 <comment><USER2> I wonder how far afield the situation at Oracle is from what exists at many other US companies. I would not be surprised to hear "paid white male employees more" or "was far more likely to hire Asian applicants - particularly Indian people" about any technology company.</comment>


How Artificial Intelligence Can Predict Solar Flares - <AUTHOR> http://blogs.scientificamerican.com/guest-blog/2014/12/12/forecasting-the-suns-fury-how-artificial-intelligence-can-predict-solar-flares/

<comment><AUTHOR> Here's the paper that describes the actual algorithm: [http://adsabs.harvard.edu/abs/2013SoPh..283..157A](http://adsabs.harvard.edu/abs/2013SoPh..283..157A)

<comment><AUTHOR> Full text: [http://cl.ly/0x3n0Z0A3a0q](http://cl.ly/0x3n0Z0A3a0q)</comment></comment>


Device-To-Device Push Framework for Android - <AUTHOR> http://code.google.com/p/openmobster/wiki/D2DPushFramework

<comment><AUTHOR> Device-To-Device Push framework allows two way communication between mobile devices using the Push architecture.

The linked article shows detailed instructions on how to integrate this framework into your Android mobile apps.

This framework can be used to build interesting communication oriented apps such as chat and instant messaging</comment>


Ask HN: Devops side projects for a student? - <AUTHOR> I'm graduating in a couple of years, and I would like to find some project ideas.
I've done some web programming in the past, but gradually I became more interested in the operations side of things.
But unlike apps, I'm not sure how to showcase a particular "devops project" to future employers. I've used docker/vagrant for local development, ansible for configuration management, jenkins, etc. But these aren't necessarily something I can talk about hours on end.
I'm planning to find a devops internship position, but until then, is there something I could work on? <comment><USER2> DevOps is like programming: unlimited/infinite.

First things that come to mind:

\- You can create puppet modules, Chef recipes, SaltStack formulas (not familiar with Ansible but sure as hell has similar features)

\- You can get certifications (Chef, Puppet, SaltStack, Ansible, etc.)

\- You can get DB certifications and write your experiences about master/slave configurations, etc.

\- Orchestration and schedulers tools, k8s, mesos/marathon.

\- You can get certified for AWS, GCE and Azure.

\- Became proficient in Bash, Fabric/Capistrano. Display some automation scripts on your blog/github-repo. Can you configure a firewall to fetch a list of IPs (say porn websites) from the internet and block or redirect access to these IPs using bash?

\- Study distributed systems, replication, possible problems (split brain, etc.). How does consul/etcd/zookeeper reach consensus. When to use one tool over another, why not use Redis instead of consul?!

\- Study big data on Coursera (hadoop/cloudera/HDFS/MapReduce)...

It's a never-ending story. Just take a look at look[1] at what companies are requesting. A devops should be able to write code (with varying degrees of expertise) and understand architectural/design challenges. I'm not saying you _need_ to know everything - you can't, there are simply too many tools around - but you have to learn at least some of them and you can explain what you learn via blog posts or github code.

[1] [https://weworkremotely.com/categories/6-devops- sysadmin/jobs...](https://weworkremotely.com/categories/6-devops- sysadmin/jobs#intro)

<comment><USER3> He clearly didn't mean sysadmin's automation that is nowadays called "DevOps". He meant "system administration" gigs.

<comment><USER4> DevOps work is sysadmin work with the addition of junior level software engineering experience (usually bash and python).

Source: Linux|Sys|Network Admin/IT Manager who moved into DevOps.

<comment><USER3> Funny. Sysadmin's work _always_ included writing missing tools, which is often above junior programmer's level. What you say is basically DevOps being system administration for beginners.

<comment><USER4> I think you misunderstand me.

Yes, sysadmins have always written the glue between disparate systems, implemented monitoring, etc using bash, and now more than ever, python. But now DevOps roles are expected to (in my experience) lean closer to closer to application reliability engineers; not only must you perform admin tasks, and write tools to automate infra tasks, but you must also dive into app code at a moments notice when shit is broken.

<comment><USER3> Well, OK, but this was expected from sysadmins as well. It was always sysadmin who is responsible that the application died, no matter the real reason. Where do you think the idea of putting programmers on call to reduce crashes came from?

<comment><USER4> > It was always sysadmin who is responsible that the application died, no > matter the real reason.

Out of the last 15 years of tech experience, I've only seen this be the case in the last 3 years, where the sysadmin/Devops engineer was required to have more ownership beyond "your application is broken, I've restarted it and notified the developer".

<comment><USER3> Funny. I have seen it for last ten years. And it was not that rare that the sysadmin knew more about system's internals than its programmer.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> I love this question! I'm a DevOps engineer who came to my role through a combination of test automation and test network management, and a keen interest in tinkering with technology stacks. I love what I do and can't recommend it enough to new graduates, who may not even know of the role.

To build a portfolio, I would suggest the following:

        - Create a document describing a small tech stack:

          > Outline the systems (or list of docker containers)

          > Draw a network diagram showing IPs / subnet(s) info

          > Describe the OS(s) and base node configuration (ssh, NFS, etc...)

          > Outline the software stack (on each system), describing connections between nodes (eg. Apache web server with PHP, connecting to Postgres on port 5432)

        - Create a github repo

          > add the above document as the README.md file

          > add a SETUP.md document (or add to the README) with steps to setup a local ansible workspace, and deploy your stack with your configuration scripts

        - Set up a local (or cloud) environment with your Jenkins pipeline, and document a deployment (with screenshots) showing a working stack configured from a set of clean nodes.

        - Expand on what you've made (create a new repo for each! think of them as new projects with a different set of requirements, even if they build on what you've previously done). Try to focus on one thing at a time:

          > SSL everywhere

          > OS hardening

          > failover / clustering of the database

          > failover / clustering of the web/app server

          > load balancer in front of the web tier

If I saw the above from anyone, I'd be impressed. If you have any questions, feel free to message and start a conversation offline. Best of luck!

</comment><comment><USER6> If you just want experience / references... go to local businesses (eventually pick a niche, like law firms or restaurants or marketing agencies...), have them run this tool, and tell them you're willing to get them from an F to a B for free (maybe start with local business running WordPress)... and they can pay if they want an A+ rating. Document all the sites that you were able to improve, find some ways or build some tools to automate the process, and talk about it during interviews.

* Observatory by Mozilla || [https://observatory.mozilla.org/](https://observatory.mozilla.org/)

Tool to help quickly tell what a site is running as a CMS:

* Wappalyzer || [https://wappalyzer.com/](https://wappalyzer.com/)

If you wanted to make a few bucks... do some simple disaster recovery work... make sure they are at least doing on-server backups -- at minimum. Make sure they have rudimentary security... Fail2Ban is easy to setup. Most SMBs do very little for web security, and haven't really thought ahead to what happens when the shit hits the fan (and it wouldn't raise any red flags for them to hire a bright college kid to do this sort of work). If they see a website come up when they click on a link, they think, "Hooray it works, and it'll work forever!"

If you wanted another up-sell option... offer a cheap monthly retainer to do uptime / content monitoring, application performance monitoring, server health monitoring, and access log monitoring. If you just want experience, set the price low... you can always up the price as you get more experience / more practice with these tools and automating the setup for them. Or offer to help them with general IT (this is a black hole time sink, but cool if you need beer money). Or offer to show them how password managers work. Or setup backup systems for their computers (Backblaze is great). Or... once you get a foot in the door you'll see more opportunities.

If a college kid came to me with hands-on experience completing a valuable task for 10-25 real-world businesses... I'd be really impressed.

EDIT: The above is pretty much how I paid for college. Graduated form an Ivy League school, paid every cent of it myself (no loans or financial aid), ended up with over $100k in the bank more than when I started. Got into business doing email migrations for a hospital chain, got my foot in the door with a lot of doctor's offices, grew that business from there to general IT, basic HIPAA compliance, website development, a bunch of just random "tech services" \-- lots of great hands-on-training for me along the way.

<comment><AUTHOR> What about websites that are run on top of a 3rd party services? For example, I noticed a lot of doctors use their doctor-specific website generators that use something like weebly (it's crazy - there are ones specifically for optometrists, dentists, chiros, etc). I'm not sure how much of a change I'll be able to make.

And how much is a "few bucks"? I've done some freelancing work, and I made the mistake of setting the price too low when I first started. I'm pretty oblivious to the business side of things, but I get the feeling that they use price as one of the determining factors for quality. I admit I fall into that trap whenever I purchase something without research.

<comment><USER6> If you notice that they are running some sort of crappy "Dentist CMS" just avoid them. They've signed up for some "all-in-one" plan with some tech service provider who probably does everything from their website to their practice management software... they can't let you work on one part of that ecosystem without canning their current provider... and no way you want to do all the stuff they do (even though the all-in-one guys tend to do a really shitty job with everything... the thing that matters is the practice management software and everything else they do just pads their profit margins).

In terms of what to charge... totally depends on the situation (what services you're offering, who you're offering it to, and the market you're in). I don't generally think people are afraid of paying too little... certainly like $25 / hour -- most SMBs would love paying something like that for the work, and it's about what you'd make hauling sofas and moving boxes around... just a lot easier on your back. You can come off as very high quality, and still have a low price... my guess is you aren't instilling confidence in your presentation. Easy to fix... take a public speaking class, dress a little nicer (suits never hurt), and carry a notebook ([http://www.staples.com/Staples-Composition-Notebook- College-...](http://www.staples.com/Staples-Composition-Notebook-College- Ruled-Black-9-3-4-inch-x-7/product_919350)) -- this gives people confidence to see you're an active listener and making a to-do list of action items ([http://lifehacker.com/5575748/best-to-do-list-manager- paper](http://lifehacker.com/5575748/best-to-do-list-manager-paper)).

Spend an hour on Yelp generating a prospect list... find all the local businesses that use WordPress, practice your elevator pitch, then clean yourself up and go walk around asking to speak with the manager.

<comment><AUTHOR> Yeah, those websites all scored 0's on mozilla's scale. Hence, I thought they were opportunities. But thanks for the heads up.

As for the price, I did freelancing online. When I first started, I offered really cheap services, and only a single person contacted me. But when I increased the price, I started getting more responses. Still, that notebook prop is genius. Guess I'll have to work on my "jargon mask" too ha

<comment><USER6> If you're just doing Upwork type shit, waiting for customers to come to you... it's just a commodity. So yes... when people search they say, "Well, I don't want the cheapest... those tend to be bad..." But look, Upwork is literally AIDS and will give you cancer of the herpes sores. Go to local businesses in- person, educate them... this creates demand for your services. Talk to the manager, build the relationship... this creates trust in you as a service- provider. Online freelancing is a race to the bottom. In-person prospecting will net you better clients, better projects, and better pay.

BUT... start small, make sure you can do the work at a professional level before you charge for it. It's OK to do a few for free... way less stress than taking their money. Do a few trial runs... get comfortable with the work. Your confidence will grow and then you'll start commanding industry-standard pay. The money does not matter at all right now, you need practice and references.

<comment><USER7> I've always read it's better to charge by the hour, but that you also want to have a contract with an outline/description of the project and expectations. I'm having a hard time getting past this because how in detail are you supposed to go with that so they know what you're responsible for and what will cost extra?

<comment><USER6> You can add in some assumptions in the SoW / MSA / contract. Like, "Will only be responsible for work in XYZ Repo, not other Repos or 3rd Party Services." It's really whatever you want to put in there, I start with a pretty long standard list (based on the project type). "Won't customize administration tools or workflows of WordPress / Magento / ABC Platform," to, "Will utilize Foundation / AWS / blah blah blah."

You can always do work that is in a gray area, or clearly out of scope of the contract, if you want to be nice to the client. The contracts are for clients that you don't want to be nice to. They are levers you can pull to get the client back into a manageable space. If you don't give yourself a lot of levers, you're left with just "walk away" when the shit hits the fan... and typically that option doesn't include getting paid.

Even for "simple" projects now my Statements of Work are 25+ pages. Templatized as best I can, and all reviewed by a lawyer I trust. I don't sign contracts that clients send me, without stipulating that if that contract and the one I sent over are ever at odds, then the contract I sent over wins. You have to protect yourself, especially as a one-man-shop. You can't afford to get bogged down in shitty squabbles, so like with most things... "a stitch in time saves nine" here. Longer, more explicit and detailed contracts save you time.

</comment></comment></comment></comment></comment></comment></comment><comment> a-saleh Ask around at your uni. I was a part of a small scale server deployment to facilitate student project hosting :)

Friend of mine had a spare server lying around so we persuaded departmental sysadmin to host it.

</comment><comment><USER8> > But unlike apps, I'm not sure how to showcase a particular "devops project" > to future employers.

One of the key elements of DevOps is automation. If you can make sure everything you do is in a public git repo, then you just need to show that to future employers. It doesn't have to be a working app, it can also be an Ansible playbook.

</comment><comment><USER9> I'd recommend setting up lambda/api gateway/cloudfront for a serverless application, there are lots of guides out there - you want to do something that will be relevant when you are done learning, not necessarily just something relevant now.</comment>


Backpacker stripped of tech gear at Auckland Airport - <AUTHOR> http://www.nzherald.co.nz/nz/news/article.cfm?c_id=1&objectid=11171475 <comment><USER2> Not quite so relevant to NZ but since I'm guessing many HNers are wondering what happens at the US border:

[https://www.eff.org/wp/defending-privacy-us-border-guide- tra...](https://www.eff.org/wp/defending-privacy-us-border-guide-travelers- carrying-digital-devices)

I worry about this, since I travel frequently. Then again, I also worry about plane crashes. I think both are probably irrational, but having plans is what keeps the boogeyman away at night, so here's mine:

1) Remain polite and professional.

2) Decline to consent to any search. Comply with officers' demands that they tell me I'm legally required to comply with. Ask for that demand to be produced in writing. I'm willing to wait for a supervisor while they figure out how to do that, even if it means I miss my flight. I will get a receipt and/or report number and/or some other official written record of the incident if any seizure, including seizure of information, takes place.

3) Immediately after reaching my destination, file written grievances with any and all responsible agencies. They must have a spreadsheet tracking passenger complaints somewhere. Let's increment that while having someone commit, on paper, to a version of events of what happened and a legal rationale to why that was justified. This will only cost me a bit of time and money, and I have lots of time and money, but it has heavily asymmetric payoff in the event of a lawsuit or PR battle.

But honestly? Mathematically, I'm much, much more at risk of getting mugged in Chicago on my way home from the airport than getting held up by Customs. I don't exactly live in fear of muggings but I take sensible precautions like e.g. backing up my data, making sure that I can turn a factory-new laptop into a working dev environment within a day, and carrying insurance. I'm pretty sure most of these still work even if I happen to lose a laptop to Customs rather than to a mugger.

<comment><USER3> Do you get searched by the TSA even when you're using the US airport as a hub, and not visiting US? Because I was already thinking of avoiding US as a hub if possible, but I wasn't sure if it was necessary or not.

<comment><USER2> My understanding is that US airports are generally not configured to separate transit passengers from the rest of the airport (there is a term of art for this but it is eluding me at the moment). As a consequence, if you're in America even for a few minutes, you'll meet with our good friends at Customs and Border Patrol. CBP is not TSA.

<comment><USER4> The term that I've heard used for this is sterile transit. I'm not aware of any US airports having it.

<comment><USER5> LAX has it, I've been through on the London to Auckland route, both ways.

Both times they didn't have enough staff to man the separate customs desk, and ran us through a general customs hall.

<comment><USER6> It's been and gone a few times over the years on that route. At times immigration but no baggage claim, at times transit lounge (actually I'm not sure I ever did go through when that was in force, I think it came and went in-between trips for me), at times full re-check-in... anyway, I think the setup was different every time. And every time they found a way to make it a PITA. I eventually got fed up with it, and don't travel that way any more.

I prefer via Dubai, Hong Kong, or Shanghai. Border control officers there, while still clearly doing their job meticulously, manage to be polite as well.

</comment></comment></comment></comment></comment></comment><comment><USER7> In the first week of January I'm leaving a Software Engineering gig for a US defense contractor to move to New Zealand. Due to the expense of shipping, my wife and I are only bringing what we can carry, and we've taken special care to fit as much of our lives as possible into our electronic devices. Search/seizure of these devices would be horrible and violating on so many levels.

This news is absolutely _terrifying_ to me.

Edit: I wrote this as a quick knee-jerk without much thought, and now that I read it again I see the sad irony. This is being done to _prevent_ terror? Someone needs to do a risk/reward analysis here...

Edit 2: I appreciate everyone offering up solutions here, but really the only solution would be either to not go, or to not carry any devices at all. Encryption can't prevent me from being detained and my property from being confiscated. Given that the issue here is a violation of personal space rather than one of having something to hide, encryption will only increase the impact which such an event would have on my wife and me. If such an event were to occur and I was using strong encryption to protect my data, I'd be asked for any encryption keys, detained for much longer, and if I refused to cooperate in any way I'd have my things permanently confiscated and face refusal of entry.

If I find myself in this situation, I'll be looking to minimize impact. I'll cooperate while trying as best as I can not to compromise my values, and then raise hell after the fact.

<comment><USER8> Upload everything to a server before you leave. Download it when you get there. Take no devices across borders except a throwaway phone for emergencies.

<comment><USER9> On it's face, this is not good advice, particularly as electronics are rather more expensive in NZ than in the states. However, it is entirely possible to sell all of your electronic gear (ebay, craigslist, amazon) and buy it again, at a cost. Of course, this is a great deal of pain to go through, and it strikes us all as egregious, unnecessary, and unjust.

It's not clear, however, why if customs can demand your passwords to your devices, why can't they demand your passwords to remote servers?

In any event, it is important to protest in the strongest possible way these encroachments upon our individual liberties. It's shocking that this needs to be repeated in 2013 in the West, but a citizen should not be deprived of life, liberty, or property without due process of law, and mere suspicion does not constitute due process. The state cannot be allowed to continue violating these rights.

I've spent some serious time in NZ, and was deeply impressed with the humanity of it's government and it's governmental workers. It is heartbreaking to see this Americanism make its way to a more innocent land.

Don't give in to this, Kiwis. Protest. Write letters to your representatives. Keep your dignity and your common sense. Don't let your security forces (at the border or anywhere else) do this sort of thing to visitors.

<comment><USER7> > It's not clear, however, why if customs can demand your passwords to your > devices, why can't they demand your passwords to remote servers?

I don't know that there's any legal mechanism in their favor (I'm not very familiar with NZ law on this level), but there's a simple physical mechanism they have going for them. If you refuse to provide passwords to your devices, they can simply refuse to return them to you when they're done with their "inspection". If you're a citizen and you refuse to provide passwords to remote accounts, they have no lasting leverage. If you're not a citizen, they can simply deny your entry.

Edit:

> I've spent some serious time in NZ, and was deeply impressed with the > humanity of it's government and it's governmental workers. It is > heartbreaking to see this Americanism make its way to a more innocent land.

Two things... First, this is the kind of thing that had us moving there in the first place [Edit: for clarity, this wasn't an initial reason for our move, or even why we selected NZ, but it's definitely in the "pros" column]. I'm displeased with the adversarial/entitled tack that my country's government sometimes takes with its people, and I'm still hopeful that this is different elsewhere.

Second, I find it really sad that you'd label this "Americanism." I don't think it's entirely inaccurate to say that this is becoming a part of our culture, but there is still tons and tons of good which can be ascribed to that label as well. I hope that the bad isn't dwarfing the good to the extent where the term "Americanism" becomes synonymous with "McCarthyism."

<comment><USER10> _First, this is the kind of thing that had us moving there in the first place ... I 'm displeased with the adversarial/entitled tack that my country's government sometimes takes with its people, and I'm still hopeful that this is different elsewhere._

FWIW, my wife and I were in the middle of a move to California to work for Google, and we decided we didn't want to do that and that we'd rather live in NZ instead (I'm a kiwi but had lived overseas for 13 years, she's foreign produce). I've been very disappointed with some of what I've seen from a legal/political point of view since I came back but NZ is still streaks ahead of most other places I've lived from a quality of life standpoint (with some exceptions, primarily cost of living will shock you coming from the States). We're really happy with the decision we made and I feel like we have a much better life here than we would have had there. Where will you be living?

 _I hope that the bad isn 't dwarfing the good to the extent where the term "Americanism" becomes synonymous with "McCarthyism."_

Sadly, between the NSA and the TPP, as a foreigner it's getting harder and harder to see the good of the US. I'm afraid that in my experience your whole government and system of governance, at least, is getting tarred with your foreign policy brush. That said, I don't know any Americans who have experienced any sort of personal issue with the people they meet here because of this, but the country itself is not seen as an agent of good IMO.

</comment></comment></comment></comment></comment><comment><USER11> Kiwistan strikes again. He should be grateful they didn't send a team of armed police to raid his house.

/edit:

Historically, white New Zealanders thought of New Zealand as "Better Britain". This basically meant doing anything [1] and everything [2] to please the "Mother Country". Now that the USA is the dominant superpower, this means things like raiding Kim Dotcom's mansion or providing land for a spy base. [3]

[1] [http://en.wikipedia.org/wiki/Gallipoli_Campaign](http://en.wikipedia.org/wiki/Gallipoli_Campaign) [2] [http://www.teara.govt.nz/en/the-new- zealanders/page-8](http://www.teara.govt.nz/en/the-new-zealanders/page-8) [3] [http://en.wikipedia.org/wiki/Waihopai_Station](http://en.wikipedia.org/wiki/Waihopai_Station)

<comment><USER12> Somewhat related - it appears Dotcom Is still very much under surveillance. The but about his cellular cover improving is fascinating, but if true, a fairly big tell. [http://m.nzherald.co.nz/nz/news/article.cfm?c_id=1&objectid=...](http://m.nzherald.co.nz/nz/news/article.cfm?c_id=1&objectid=11170965)

<comment><USER13> "The but about his cellular..."

Excellent typo! You type in a kiwi accent ;]

</comment></comment></comment><comment><USER14> When an organized group of people uses force to take your belongings, leveraging tactics of fear for political ends, isn't that firmly within the definition of terrorism?

I don't know the facts here so I'm not implying anything in this specific case, but I like to remember that the terminology we use drastically shapes our thinking.

<comment><USER15> Secretary-General Kofi Annan actually tried to define terrorism at the end of his tenure... He suggested : "Any action constitutes terrorism if it is intended to cause death or serious bodily harm to civilians or non-combatants with the purpose of intimidating a population or compelling a government or an international organization to do or abstain from doing any act."

That would make the bombing of Dresden and Nagasaki (and any other bombing under the 'strategic bombing' doctrine where the objective was to drain the people's will to fight) to be terrorism, though. It would make some of what the ANC did terrorism. This, however, would not be terrorism.

I think Kofi Annan was bang on the money. About time we had a workable definition of the word (beyond just 'whatever the other guy does'). However he didn't get very far with it at the UN level.

<comment><USER16>
        "LeMay said, "If we'd lost the war, we'd all have been
        prosecuted as war criminals." And I think he's right. He,
        and I'd say I, were behaving as war criminals. LeMay
        recognized that what he was doing would be thought immoral
        if his side had lost. But what makes it immoral if you
        lose and not immoral if you win?"

Robert S. McNamara, in the documentary series The Fog of War.

[0] [http://www.errolmorris.com/film/fow_transcript.html](http://www.errolmorris.com/film/fow_transcript.html)

<comment><USER17> International law is a joke when only people who lose wars are prosecuted.

(I have a lot to say on this point, but I'll leave it at that and point you to this[1])

[1] a series of three blog posts, old now and in need of rewriting:

[http://politicomaniac.net/2011/02/the-failure-of-the- state/](http://politicomaniac.net/2011/02/the-failure-of-the-state/)

[http://politicomaniac.net/2011/02/lie-back-and-think-of- engl...](http://politicomaniac.net/2011/02/lie-back-and-think-of-england/)

[http://politicomaniac.net/2011/02/fluffy- federalism/](http://politicomaniac.net/2011/02/fluffy-federalism/)

</comment></comment></comment></comment><comment><USER18> I'm not so convinced on the conspiracy theories here. I say that as I had a similar experience in Auckland airport a couple of years ago, when travelling to another destination in the country.

The guy who interviewed me was actually very polite and friendly. They said I'd probably been flagged up as suspicious due to my itinerary. I'd travelled from China, for a 2 day visit to see a customer, with tickets booked via a US agent (Expedia). Suspect that living in China at the time had quite a bit to do with it.

Got asked all kinds of questions, most of which I didn't know the answer to. Didn't get my laptop searched or asked for any passwords, but they did make a point of asking if I had any porn on my computer. I said no, and they asked no more. They way they asked though did make it sound like it was a bit of an issue to them.

Took almost 2 hours in total. I actually didn't find it particularly stressful, mostly as I still made my next flight. I'd had far worse times travelling to the US, and getting some vindictive border agency guard who's out to get you by any means possible. Really, I loathe US immigration.

</comment><comment><USER19> Apparently the New Zealand government is a bitch of the NSA.

<comment><USER20> I think at some level of consideration, it's worth thinking of the US, UK, Canada, Australia and NZ as one entity. The public of each might see the different flags, Olympic medal counts, anthems and cultural variations but when the shit hits the fan (and now anything hitting anything) it's effectively one thing.

I've mentioned before on here that I think of it as Oceania from 1984.

If a company has influence in the U*, you can bet they will get what they want down here too.

<comment><USER21> Add Germany. Our Government is pro NSA and supports them as good as they can. They are dishonest self-servicing hypocrites.

<comment><USER22> Go on, name one government which isn't.

Actually, the UK government isnt being hypocritical, its brazenly up for anything the US instructs it to do. I do wish we would decide if we are a great little country which punches above it size, or a US lapbitch. Feckin' hilarious when you consider the frankly xenophobic hatred we have of the EU compared to the fawning over the US.

As for Germany, didn't you chaps have an election in the middle of the scandal? Didn't various positions change a lot depending on polls, and of course the confirmation that the US spies on it's allies as much as its enemies? Watching some German politicians wriggling about as the Snowden information is revealed must be quite humiliating for the German people.

<comment><USER23> >>Go on, name one government which isn't.

China? Russia? Iran? Venezuela? Pretty much any country that refuses to do USA bidding is labeled 'enemy of the free world'.

</comment></comment></comment></comment></comment><comment><USER24> This is why professionals operate on "Naked In/Naked Out". Show up with nothing, acquire all your tooling in the country, execute your operational activities, dispose of the tooling, leave the country with nothing.

Expensive, but safe.

These sorts of harassment measures are only capable of catching amateurs making serious operational mistakes. They will not catch professionals or serious operatives. I can never understand how this passes for counter- terrorism when it is really just "counter-clumsy-terrorists", at best.

</comment><comment><USER25> I had an interaction like this in Canada. The options they give you are to give up your passwords, log in to your online banks to show them transactions, etc., or have everything confiscated.

The reason they did it to me is because they thought I was a drug smuggler. They got that idea because I was going to China and didn't have a fixed itinerary, which they found to be incredibly suspicious.

I'm not sure if the non-techie cop was playing good cop/bad cop or not, but he was yelling at me and accusing me of being a liar from the beginning. Because I knew I hadn't done anything wrong and wasn't lying, it was pretty comical, but it became really upsetting once they started threatening to seize everything if I didn't give up my passwords.

<comment><USER26> Sort of amusing that it's the lack of fixed schedule that really rattled him. Dude sounds like he could use a sabbatical himself.

</comment></comment><comment><USER27> "The object of terrorism is terrorism. The object of oppression is oppression. The object of torture is torture. The object of murder is murder. The object of power is power. Now do you begin to understand me?"

</comment><comment><USER28> Time to switch login prompt to "Logging in with username and password" and have a dummy account that can delete files upon login. Provide the fairly clueless customs official with the loaded login credentials and damage done before they realise.

Not that I have anything to hide... that being said they will probably just back door into my laptop next time I'm on and deactivate any form of tripwire.

Curse you NSA, always streets ahead!

(Note: If I wasn't on their radar, I am now... /sigh, it was a joke)

<comment><USER29> Pulling that sort of stunt would probably get you in a lot of trouble.

<comment><USER30> You must stop thinking like a _victim_. It's your property, your responsibility, your freedom, your life. Assert yourself.

[http://en.wikipedia.org/wiki/Stanford_prison_experiment](http://en.wikipedia.org/wiki/Stanford_prison_experiment)

<comment><USER31> Okay, your heart is definitely in the right place, but if you're going to assert yourself over your electronic gear at the airport, do _not_ for heaven's sake do it by playing cute half-clever tricks with hidden volumes or self-destructing software. Do it by politely but firmly refusing to hand over passwords; then the worst that's at all likely to happen to you is that they send you home without your gear.

</comment></comment></comment></comment><comment><USER32> I remember fellow HN'er Steve Kablink saying on twitter that the only reason he hadn't done a FOIA request on himself is because... they probably have a list of people who have done a FOIA request on themselves (but that he'd be doing one soon out of principle).

This kind of heavy handed, precedent setting, dissent-disincentivizing move is just sad to see happen (and perhaps sadder that I feel completely at its mercy and feel it affecting my actions concretely)

<comment><USER33> I haven't done one because a. what are they going to give me that I don't already suspect b. it's another data point for them to use in modeling.

I don't turn on DNT in browsers either but I still run AdBlock and restrict third-party requests by a lot.

</comment></comment><comment><USER34> So its still news to people that customs agents are all powerful.. :) turns out that if you think police was bad, custom is 1000 worse. They can do literally anything and that's not just the USA. It's the same everywhere in Europe for example.

Also, I would strongly advise giving out your password if you want to be on your way. Refusal to give access is generally a huge issue.

</comment><comment><USER35> As an NZ citizen who is outraged at this pathetic kowtowing to US interests, anyone have any good ideas about who or what I can direct pissed off emails to? it would be nice to at least feel i've tried to do something

</comment><comment><USER36> Whenever I read these I always think there is more to the story -- usually I find out later that the "victim" was being a jerk (not that they should hassle jerks -- but that is human nature).

</comment><comment><USER37> Lets all just remember that he is at this stage the first for this to happen to. I'm a kiwi and on a New Zealand watch list for other reasons and this has never happened to me. No need to get scared, thousands upon thousands of people fly through nz airports all the time and this never happens. I follow this sort of thing and its the first I've heard.

</comment><comment><USER38> I have bank code on my (encrypted) laptop (and the code itself is in an encrypted container), I'd like to see them demand I give up the passwords, then have the US involved in a big corporate espionage lawsuit vs one of the world's largest banks.

Actually nvm, I don't, I wiped my hard drive before bringing it in for repairs.

</comment><comment><USER39> As Bruce Schneier suggests, when crossing a border, encrypt your drives and change your password to something so long and convoluted you cannot possibly remember it.

Give you password to a trusted friend (preferably your lawyer) with instructions not to give you the password until you get home or to your destination.

</comment><comment><USER40> If you're visiting a country you're not a citizen of, bring your data in over the Internet. (Yes, there's the NSA thing, but it's still unclear what they can break. My guess is that they have not broken the crypto itself, only some buggy implementations.) If you're a citizen of the country, encrypt your data and let the courts figure out whether or not they can compel you to provide the key. (Or, they can publicly declare that they've broken AES, and get your data anyway. Either way, it's a win.)

Also strongly agree with patio11 on getting everything in writing. This is now a criminal investigation. Make sure you have what you need to defend yourself in court.

<comment><USER41> If the NSA wants your data they already have it, or can get it anytime they want from you or your service providers. It could change in the future, but at the moment we're all pwned.

The problem for an essentially law abiding individual crossing a border is having access to their own data after crossing. Hardware fetishes notwithstanding, the hardware and its possible loss doesn't matter at all, it's the data held by the hardware or that the hardware gives access to.

So:

\- If you can, stop buying expensive hardware. It doesn't matter.

\- Don't carry hardware across borders that you can't emotionally or economically walk away from forever.

\- The only copy of data that you depend on should not be on hardware that you cross a border with. Have it accessible on a server, the cloud, or with a colleague that can ship it to you electronically or physically after safely crossing borders.

\- Accept that you may have to buy cheap disposable hardware after exiting border checkpoints.

\- Worst case, plan for not having access to any hardware or data after exiting border checkpoints; you may not have your own hardware, you may not be able to buy any, and you may not have access to your data at all. Plan C, if you will.

</comment></comment><comment><USER42> Are things getting worse every day?

<comment><USER21> Every month, but we're getting close to every other week. That's not entirely because of September 11th, but because politics thinks that they can serve Government and Corporate requirements better when they rip our data, privacy and rights.

</comment></comment><comment><USER43> Terrorism: Terrorism is the systematic use of violence (terror) as a means of coercion for political purposes.

If you define violence as intimidating (of), physical and mental torture then all governments top the list.

</comment><comment><USER44> Sad. After a long flight one has to go through this. I have gone through my share. I forgot to declare an apple given by Singapore airline. I kept apple in my bag in rush while getting out of aircraft, and was so sleepy to realise I need to declare it. I was held there for sometime. I was fined USD 200. The most expensive fruit of my life. I didn't even get to keep it with me.

Some of people on airport were like robots, they didn't have any reaction (on their faces) for my plea.

</comment><comment><USER45> _However, a Customs official has since told him they were searching everything for objectionable material under the Films, Videos, and Publications Classification Act 1993._

Yeah right.

</comment><comment><USER46> I don't really travel internationally, but I decided -- about ten years ago, when people first started talking about the way laptops are searched at borders -- that if I do feel the urge to travel internationally with my laptop, I'll dd if=/dev/zero of=/dev/sda on all my gadgets before I cross any national border.

Of course you want to have VNC / ssh set up ahead of time so you can actually do stuff...

</comment><comment><USER47> I've tweeted and blogged against the surveillance state many times, so I guess I must also be on whatever list this guy is on.

</comment><comment><USER48> Lots to consider as well - travel to the US can be rather dicey for foreign travelers, so here is what you _can_ do to become better prepared for travel here - [http://www.cba.org/CBa/PracticeLink/tayp/laptopborder.aspx](http://www.cba.org/CBa/PracticeLink/tayp/laptopborder.aspx)

</comment><comment><USER49> Dear HN -- In the US, please start making a distinction between CPB and DHS. One governs entry into the county the other is responsible for security when boarding a plane.

CPB -- [http://www.cbp.gov](http://www.cbp.gov) DHS -- [http://www.dhs.gov](http://www.dhs.gov)

</comment><comment><USER50> Because children.

Because terror.

Because politics.

I'm glad I've already been to NZ.

<comment><USER51> I'd take my chances with the abuses of NZ customs officials than just about anywhere else in the world. One story does not a broken system make.

This is the same country that told the US to fuck off with their nuclear- powered ships and when levered through treaties to send personnel to warzones, sends medical staff rather than troops. It's not some backwards little-Stalin state.

<comment><USER52> I suppose if I'm not an NZ national (US citizen) they would only pause for 5 seconds (as opposed to none) before similarly making away with my gear? Or would they be more inclined to do that to an American as a more kingly than the king type deal?

(I was planning on going there for Easter)

<comment><USER53> Just be careful about biological material (NZ has very strict airport biosecurity) and you'll be fine. I'm a New Zealander and this is the first time I've heard of something like this happening at the border.

<comment><USER12> Sorry, accidentally down voted you. Yes they are very fussy, shoes need to be clean, no plant material etc.

<comment><USER54> I cancelled out your downvote, so your guilty conscience can rest easy. :-)

I remember when we visited the Philippines, a friend gave us about 20 jars of a local delicacy to take back home to New Zealand. Which was very kind, except New Zealand's biosecurity laws meant that we had to throw most of them away at the border. (We could keep the few that were sealed properly.)

</comment></comment></comment></comment></comment></comment><comment><USER48> My question - does the local border patrol have the ability to break bitlock encryption on a laptop I bring there? I mean, who from HN travels w/o something like this done on your computer in the first place?!

<comment><USER23> They apparently have the ability to ask you for the password and take your stuff or refuse entry if you don't cooperate.

IMHO they shouldn't, but that's a different issue.

</comment></comment><comment><USER55> Never declare anything, ever. And if they pull you out for a search anyway, play ignorant.

<comment><USER56> This is terrible advice, especially in the New Zealand context. Playing ignorant will get you into a lot more trouble than being honest, and will just fuel the fire more.

</comment></comment><comment><USER57> I routinely carry microSD cards filled with 16GB of random numbers.

</comment><comment><USER58> A tight slap to our rights and privacy.

</comment><comment><USER59> surely this...?

</comment><comment><USER60> this is sad

</comment><comment><USER61> Yeah maybe it is his last name.</comment>


Google out-Appling Apple at the browser - <AUTHOR> http://n8.tumblr.com/post/14466066753/google-out-appling-apple

<comment><USER2> I'm happy that the two are separate in Safari. The combined address / search bar is one of the things that I really don't like about Chrome, and part of why I don't use it. Searching and typing in an address are distinctly different tasks.

<comment><USER3> How so? Everytime you type something in a search bar, it goes to a search engine's page anyway? So it's just shorthand for <http://google.com?q=etcetc>

<comment><USER4> I also don't use Chrome because of the combined elements. I think they serve different purposes and combining them is confusing (at least to somebody _used_ to having them as separate features). I also use the search bar as a kind of clipboard, as I'm sure many other people do as well.

</comment></comment></comment><comment><USER5> I don't agree with it. Chrome is awesome, granted, but it's tightly designed for making Google more money. Not that it's something wrong with it, but it's not useful from my perspective (that might or might not be correct).

Let me explain you. When you type something in Chrome's search bar, you are searching. Firefox, having two bars lets you do different things. On the right one, you search. On the address bar, it lets you _find_. When I know I want to go to a wikipedia entry for, say, webkit, I don't have to look at the results. Go ahead, type "wiki webkit" on your Firefox's address bar* and you won't have to go through Google as it has the "I'm feeling lucky" behavior.

You can't do that on Chrome. I think that's the reason both Firefox and Safari are sticking with two bars.

*Note: It might or might not work. Each time I install Firefox I have to set the keyword.URL setting to "[http://www.google.com/search?btnI=&q=](http://www.google.com/search?btnI=&q=) because it stopped working, but that was the old behavior.

<comment><USER6> Even better than the I'm feeling lucky, one of my favorite features of the firefox address bar is that you can customize the address "X Y" to go to bookmark X, with the value of Y in the url.

For example, firefox used to come with a bookmark specifically for wikipeida that allowed you to type "wiki X" and it would go directly to en.wikipeida.org/wiki/X. At first I thought thats what you were talking about.

We have a few webapps I use to manage stuff, and its just ridiculously faster for me to use them when I can pop "edit 2342252" or "break add" into the address bar.

</comment></comment><comment><USER7> As for why Chrome has so many installs, certainly part of the answer is marketing. Google has been cross-promoting it from many Google properties.

</comment><comment><USER8> I'm pretty sure iOS used to have a single search/URL input, but they separated them out in later releases.

<comment><USER9> Early versions of Mobile Safari only showed the address bar. When you tapped to focus, you got both an address and search bar.</comment></comment>