Haven: turn old Android phones into security cameras - <AUTHOR> https://github.com/guardianproject/haven <comment><USER2> Was literally going to do a ShowHN later this week for a side-project I've been working on that hits roughly the same use-cases: [https://chewcam.com](https://chewcam.com) (just finishing up some last minor bugs).

Major difference looks to be broad vs narrow feature scope (haven looks very in-depth, with lots of sensor options, etc), native app vs browser based, and long-running (security camera) vs short-lived sessions (hour or two here or there).

Not sure if its appropriate to tack on-to this thread or if I should make a separate one, but figured its closely enough related that someone interested in Haven might be interested in chewcam as well.

<comment><USER3> I like the project, but have a slightly different use case. I am describing it in case you were up for adding features to your project or if you could point me towards something that would help me.

My grandmother has dementia. We would like to install two cameras in her apartment; one in the hallway and another one in the kitchen to check if she got out of bed, took her meds, make sure she doesn't let strangers in, and doesn't wander out of her apartment. Cameras such as Ring and Nest would be ideal, but we can't afford them. If your app allowed us to both stream the video continously and store it for at least 48h for up $5 a month, we would use sign up instantly.

<comment><USER4> FWIW I've setup Raspberry Pi W cameras [0] as security and garage door opener (w/relay on GPIO) cameras for friends/family, using MotionEye [1] as the interface.

I just use a cheap VPS like Vultr [2] to terminate persistent ssh tunnels from the cameras and run a self-signed https gateway into them. It's under $5/mo for the cheapest VPS option.

It's a bit of work to get it set up, but nothing crazy hard if you know your way around something resembling a LAMP stack and ssh tunnels. There's no third parties integrated so you control the data and have a lot fewer privacy/safety concerns in general.

If there's no wifi available, at&t offers mobile hotspot prepay service for as low as $25/mo.

[0] [https://www.adafruit.com/product/3414](https://www.adafruit.com/product/3414)

[1] [https://github.com/ccrisan/motioneye](https://github.com/ccrisan/motioneye)

[2] [https://www.vultr.com/](https://www.vultr.com/)

<comment><USER5> I'd recommend to use tinc instead of ssh tunnels.

<comment><USER4> I've been relying on the command= syntax of .authorized_keys to restrict what's possible, but I'm not 100% confident in that being impervious to intrusion should someone get access to the on-camera SSH tunnel private keys.

Wireguard is somewhere on my mental todo list for possible replacement of these tunnels, but they do the job and SSH is going to be listening either way to admin the VPS.

</comment></comment></comment></comment></comment><comment><USER6> A friend uses an old phone as a power outage detector. The phone is constantly charged but is set to automatically notify once it's below (IIRC) 97% charge. If a blackout occurs, the battery would drain and the phone would notify. It's not an accurate measurement, but works well in practice.

<comment><USER7> Surely there's a system call that tells whether or not the phone is charging?

<comment><USER6> There must be, but my friend chose an almost out of the box solution using an app from the Play Store, and the app only supported alerts per charge level.

<comment><USER8> 3c toolbox might possibly be able to do this more flexibly; it allows running shell scripts in scheduled tasks and "watchers" (run hard on device status). Shell script can _probably_ be used to send a text message.

<comment> o-__-o Or automate for android

</comment></comment></comment></comment></comment><comment><USER9> This is great. If you use this app on a spare android phone for vehicle security be careful because in the city where I live if someone sees a phone in your vehicle- and many people are looking- they will break your window and steal it. So maybe don't put it in plain sight or disguise it as something else.

<comment><USER10> Which city do you live in?

<comment><USER11> Which city would you expect you could leave a phone in the car _without_ it being stolen?

<comment><USER12> makes one appreciate being a euro. i dont even lock my car ...

<comment><USER13> Which city in Europe?

</comment></comment></comment></comment></comment><comment><USER14> when haven was first in the news I found a T-Mobile store in my city that had several android devices on display which had an Internet connection and allowed downloads so I installed Haven on them and set them up to send notifications to my phone.

good times.

<comment><USER15> Haha!

How did it go? How long did it last? Were you able to watch the store remotely?

</comment></comment><comment><USER16> Aren't you running a graat security risk when you run this on old devices that often don't receive security updates?

<comment><USER17> No security updates means potential for exploits, not definitely exploited. If you don't open yourself up to exploits by using the browser or untrusted apps, you're pretty unlikely to be compromised even with an older phone.

<comment><USER18> If this concept gets popular enough eventually the majority of users will start using the same old model Android phone(Nexus 5, etc.). That's when all of the unpatched vulnerabilities will become a serious problem that's difficult to fix.

<comment><USER19> It's not difficult to fix. It's just that corporations want you to throw out and buy a new phone every year. This is what happens when you let the same company make the software and the hardware.

<comment><USER20> > This is what happens when you let the same company make the software and the > hardware.

Not sure that follows, it seems a quite Android-centric view? (Which I guess is valid in the context of this discussion...)

Apple do a remarkably good job (in my opinion) of providing software/security updates to older iOS devices. iPhones as old as an SE or 6S are still getting current versions of iOS.

I have a _much_ harder time keeping similar aged Android devices up to date (My Galaxy S6Edge has been stuck on Android 7 forever. I'd need to root it and install a 3rd party ROM to upgrade it. I haven't done that because I use it still as a mobile app test device, and I don't personally "trust" not stock OS installations to be particularly valid test devices for work apps...)

</comment></comment></comment></comment></comment><comment><USER21> Has anyone used this for a long time? I wonder how the camera (and phone in general) will deal with being on 24/7.

<comment><USER5> I tried using some similar app with HTC Desire X, it would become hot and eventually powercycle.

<comment> o-__-o I remove the back case on my Samsung s2 and it seems to help drastically

</comment></comment></comment><comment><USER22> Any idea if this or another project supports rtsp streaming so it can be integrated into existing security systems?

</comment><comment><USER23> I started to write a comment about the poor job _Haven_ is doing defining "old phone". There wasn't anything on their website, git pages, or online slide presentation. Then I realized _they_ aren't using "old phone" anywhere...

I could have sworn that when talk of the app first surfaced, they actually used terms like: "repurpose your old phone". That seems to have vanished ...or... the initial articles (along with the title of this post) are editorializing.

Still... it would be nice to get a sense of system requirements somewhere on _Haven 's_ pages. They have not included reqs anywhere. I have a ~5 year old phone (Android 4.3, 2gb ram, 16gb storage, 720p) that, I guess, I'll pull out and experiment with.

</comment><comment><USER24> I really like the idea. However, I wanted to use it last summer and really had mixed results, and it was a Nexus 5, which is no slouch of a phone. I hope the detection and reporting (via Signal) has improved over time.

</comment><comment><USER25> > Note that it is not necessary to install the Signal app on the device that > runs Haven. Doing so may invalidate the app's previous Signal registration > and safety numbers. Haven uses normal APIs to communicate via Signal.

Hm, I wasn't aware there was a way to do authenticated e2e encrypted signal messaging without a phone number? If there's an Api, then any third party app can send signal messages now?

I can't seem to find anything related to this at signal.org - what am I missing here?

<comment><USER26> Signal doesn't support messaging without any number, no. You can interact with it programmatically though if you give it a dummy number (even twilio, etc work fine). I personally have a REST endpoint running on a server that has its own number just to be able to get notifications and so forth from my server when I need it.

I wrote the software with the intention of allowing it to be used as a Twilio- like service, but I'm not sure how much utility anybody else would get from it. The messages from the source to the API obviously aren't protected, so the only use case it has is convenience rather than security. The lack of a signal implementation in a sane language (I'm interacting with signal-cli, which is a wrapper around the Java one) makes this a lot more difficult to just drop into other random tools unfortunately. I might just end up releasing that service as an open source tool if other people find it as something they'd want to be using for their own purposes.

Signal also has some pretty heavy rate limiting on things like numbers which are annoying to hit because things just tend to break. They don't have any other way of preventing spam and crawling of the service though, so I completely understand it.

</comment></comment><comment><USER27> Old phones can be used as security "microphone" too, heard people use such nets for woods security - the sound of pile can be easily detected.

</comment><comment><USER28> Would love to see something like this but simpler:

A simple open source Android app that I can connect to my WiFi and then connect to from the outside so I can see what is going on in my premises.

So it should just wait for a connect from the outisde and when I connect (via a browser) it turns on the camera and streams the video.

The app code should be as short as possible, so I can read and compile it myself. So I can trust it.

<comment><USER29> That wouldn't make much sense, the point of these apps is to do security surveillance (sort of), if you had to consciously connect from time to time to see what happens in your premises and review that everything is OK, you would do so the first two days, then would forget about it. Like doing backups by hand.

What you want is a baby monitor with video.

<comment><USER28>
        you would do so the first two days,
        then would forget about it

If that happens: MISSION FUCKING ACCOMPLISHED!

Because the whole point is to make me stop worrying about my home when I am away.

<comment><USER29> Really then just power off the device and there you go, zero worries :)

Now really, I've had a look and it seems there are a variety of cloud baby monitor apps, that would allow for the occasional check.

</comment></comment></comment></comment><comment><USER30> Reminds me there is a reddit thread on how airbnb has a department that just deals with hidden camera reports because there are so many.

So this can be for great good or great evil (there's another app to sweep for hidden cameras and look for IR reflection but that's obviously imperfect and for another thread).

</comment><comment><USER31> I used Haven in last summer when I went away for holiday. Set up with my old phone.

It was sending pictures even when light levels of the room changed.

I really liked the app and was sorry when I received the email about closure. Glad it is back!

</comment><comment><USER32> Does anyone know any open source security software that uses AI to search for a particular event? ie: "only notify me when "X" person enters the room, but not my dog"?

<comment><USER33> You wouldn't need AI; just bias the motion detection system to focus on human midriff and not dog head height.

<comment><USER32> I used an arbitrary example. let's say my roommate comes in and I don't want it to give a "false alarm" (another arbitrary example)

</comment></comment></comment><comment><USER34> Fullest respect this is very great, thank you for your work!

</comment><comment><USER35> not all old phones are created equal... some consume more power then the charger can provide (they can't run continuously in that case).

But I do have a bunch of security footage that I don't want to watch and I'm looking for software that can extract images from the video that contain people

</comment><comment><USER36> I think it's a good idea since most people change smartphones every year.

</comment><comment><USER37> see also [https://www.salient-eye.com/](https://www.salient-eye.com/) \-- a startup that tried to commercialize this idea and failed

</comment><comment><USER38> Defeatable via cell jamming / fiber cut, no?

<comment><USER39> Also via large scale EMP attacks

</comment></comment><comment><USER40> I appreciate such softwares and possibilities, but I would not recommend using an old smartphone: continuously charging its battery represents a huge risk, history just reminds us about battery explosion, detective cables, defective wall chargers.

If you add also that batteries, when aging, are a real risk, then, thanks but no.

<comment><USER26> It's really a non concern. Realistically if there was a problem it would present in normal usage when people are charging them in bed.

The amount of superstition about lithium batteries is crazy, given how many of them are used in any household on a daily basis. The battery is functionally not being used if a phone is plugged in and the battery isn't drained. This misinformation comes back from when people were using Nickel Cadmium cells decades ago, those cells _were_ functionally continuously charged because it caused absolutely no harm to them.

<comment><USER41> Two major differences:

The battery will be charged to 100% constantly.

The battery will be much older and has worse capacity than most consider even usable.

<comment><USER42> The battery also has a built-in charge controller to prevent overcharging, and if the capacity is significantly lower, shouldn't the risk of that stored energy being released also be lower since there's less energy stored?

<comment><USER26> The phone has an on board charger. The battery itself has its own controller which will disconnect the battery from the charger if it goes over voltage, under voltage, or over temperature.

The "percentage charge" of a lithium cell isn't really any measure of its safety. Even at 0% charge the cells can still auto ignite, there's an incredible amount of energy in them when they're considered to be empty.</comment></comment></comment></comment></comment>


Drones hijacking other drones in midair - <AUTHOR> http://thechangelog.com/drones-hijacking-other-drones-in-mid-air/ <comment><USER2> So many drones...</comment>


Ask HN: What's the future of tipping? - <AUTHOR>

Tipping at restaurants progressed to the credit card era smoothly, as well as the move to paying with mobile devices.
What about more casual transactions, such as tipping your barista or bellboy?
Is NFC/Bump type payments going to be accepted by people for this? Will it be possible to find an electronic method as comfortable as cash? <comment><USER2> This is a very good question, and I don't have any answers.

But one anecdote that might be relevant...

My wife and I were on a date last month at Chima, a Brazilian Churrascaria. The waiter took our drink orders on an iPhone. Throughout the rest of the night, we could ask any of the wait staff for something, they would just punch it into their iPhone and someone else would bring it right out. The system worked flawlessly. (This was also our first date in 10+ months, so I was probably pre-wired to be happy/impressed with anything.)

At the end of the meal, I asked to play with the app. It was really well done, with large, intuitive buttons, and a simple interface: [1] enter the table number, [2] choose the item category, [3] choose the item.

Most surprising of all: it was actually _his_ iPhone. The servers get the choice of using one of the house's iPod Touches, or their own iPhones.

Now, Chima is an upscale, national chain, so it could be years (or never) before this trickles down to your local neighborhood bar, but I thought this was an inspiring indicator of how mobile technology might be integrated into the service sector.

<comment><USER3> Do you remember the name of the app? I'm curious to know if it is something brsnded or white-label.

</comment></comment><comment><USER4> I'd think the penetration of non-cash tipping would be low until some sort of casual payment system got as easy as Bump and _cheap enough_ in requirements (including the phone) that people in those service jobs could use them.

Mind, smart-phone capabilities will trickle down to cheap, no-contract phones eventually. Some smart developers and companies will be ready for that.

</comment><comment><USER5> The future of tipping is 25%.

It used to be 15%, now it's often 20%. As current economic trends continue, expect it to go up. As for payment method, cash is best, and will continue to be preferred.

<comment><USER6> Really? i'm still at 10%, 15% if service was good. $2 tops if it was empty and i had to wait.

</comment></comment><comment><USER6> Only the US has tipping like the US does.

no other country has that extra tax on the food/service price like that.

Also, i'm with Mr. Pink on this. Tipping for me is the employer passing the risk of not having clients to the employee. He should provide a steady salary to their employees and that's it. Then he should include that premium on the advertised price and ensure the service is good. Why should i as a client bet my evening on the willingness of the server to get a tip that time?

<comment><USER2> I've lived in the UK, Italy, Uganda, and Cambodia, in addition to the US.

All of them have tipping.

<comment><USER6> Really? around the same 'price' in the US?

places i've lived it was an optional 10% if service was good. usually no tip above $1-2 euro for everyday stuff

<comment><USER7> The American 15-20% is less common, but I think 5-10% is becoming increasingly common in Europe. It partly depends on whether the restaurant explicitly lists a "service charge" on the bill; if they do, no tip is expected, but if they don't, in many countries it's customary to leave 5-10%. At least, that seems to be the case in Italy, Germany, and the UK. Nobody in Denmark really tips, except perhaps by rounding up. Sweden seems to tip around 5%? But Swedes I know seem to disagree on the question.</comment></comment></comment></comment>


Dabble DB acquired by Twitter - <AUTHOR> http://dabbledb.com/ <comment><USER2> So, ever since I started working on my own database web app creator I've been eyeing DabbleDB as the ones I had to differentiate myself from, because their product was just so awesome. Sure Zoho has Creator, and it's pretty slick too, especially the marketplace they've got setup for it, and there are some other contenders out there as well. But DabbleDB was the big one, the guys doing it right, if I tried to take them on feature for feature, not to mention the excellent UI/UX they've built, well let's just say that I've been playing catch up.

So this comes as exciting and scary news for me, after all the "enemy" you know is better than the one you don't, but if it's a talent grab maybe DabbleDB will go the way of Etherpad. Either way, if you're looking for a replacement, check out AppRabbit, I'll have a (DabbleDB style) introduction video up by this weekend.

Good luck to the DabbleDB gang, I'm sure they'll be taken good care of at Twitter.

<comment><USER3> Given that (1) the acquisition was almost surely for the talent, and (2) you deeply care about the space, you might consider getting in touch to see if you could take over or maintain DabbleDB.

</comment></comment><comment><USER4> Wow, this seems to be the end of DabbleDB. It must have been a hard decision to put up such a message for a service they have poured heart and soul into for so long. I guess Trendly wound up the winner of their products though. I wonder if Avi Bryant will make a case for parts of Twitter running on Smalltalk. ;)

If interested, here is a post from Avi Bryant, one of the founders.

<http://www.avibryant.com/>

</comment><comment><AUTHOR> I found this out as I was going to their site to sign-up for an account - which now I can't do. Does anyone know of some alternatives they would recommend?

<comment><USER5> Offhand, I can think of Zoho Creator: <http://www.zoho.com/creator/>

<comment><USER6> Yes, Zoho Creator is the best alternative. You can try out <http://creator.zoho.com> . New offers have been introduced for Dabble customers.

</comment></comment></comment><comment><USER7> Discussion and comments from a week back: <http://news.ycombinator.com/item?id=1420764>

</comment><comment><USER8> DabbleDB isn't an obviously fit with twitter. Was the acquisition primarily for the talent?

<comment><USER9> Dabble may not be the perfect fit, but Trendly was a much better one.

iirc, this was a talent acquisition meant to focus on analytics.

<comment><USER3> Indeed. From the Twitter blog, "They have joined our analytics team and will focus on integrating ideas from Trendly into our current tools and building innovative realtime products for our future commercial partners."</comment></comment></comment>


[Ask HN] Applying to Y Combinator from outside the US - Some Questions - <AUTHOR> Hi Guys,
I am running a small startup based out of India which has got decent traction and is promising ;) in my mind.
I had a bunch of questions and I'd really be grateful if other YC company founders outside the US or anyone with the knowledge can help:
1. Lets say I get in and do a good demo day - is being based outside the US going to ward off potential investors?
2. Is it possible if I get a US investor (institutional or angel of good standing), then I can sponsor my work visa? and run my company in the US?
3. Can anyone who was initially based outside the US and has managed to get his company funded after YC and gotten a work visa as well - enlighten me about how it worked out?
I've been working day and night on my idea and just want to ensure I know what I am getting into.
Thanks Guys! <comment><USER3> I'm not a YC founder so I'm sure those that are will be able to offer some specific advice but I know plenty of YC founders that have gone through this and I'm from the UK and applying for Winter 2013.

1\. Usually companies that haven't incorporated outside of the US will register as a US company. If your visa situation isn't completely sorted it can be a slight deterrent to some investors but not enough to put anyone off. Usually not because you're not from the US but because getting kicked out of a country can put a founder in a tough place. There are many YC companies that do it every year and guys like Joel and Leo (AngelPad) from BufferApp raised their seed round for a US company from top investors and while they get their visa they've based their company in other countries.

2\. There is a Visa for Angel Investors but I don't believe there is a visa doing the opposite. Of course if you have a degree your options open up considerably. It is technically somewhat possible to sponsor your own H1B but since you're a founder of the company and major shareholder, I doubt this would be accepted.

3\. A lot of people I know go for the O-1A visa. Which is for Individuals with Extraordinary Ability or Achievement. If you can show getting into YC and success of your company has value to the US you will be able to say for up to three years at which point you can extend or look at your other options. It's not inexpensive or easy but is a good bet.

More info here: [http://www.uscis.gov/portal/site/uscis/menuitem.eb1d4c2a3e5b...](http://www.uscis.gov/portal/site/uscis/menuitem.eb1d4c2a3e5b9ac89243c6a7543f6d1a/?vgnextoid=b9930b89284a3210VgnVCM100000b92ca60aRCRD&vgnextchannel=b9930b89284a3210VgnVCM100000b92ca60aRCRD)

</comment><comment><USER4> Great question, cause I am in the same boat. One thing I was looking into was "Startup Visa", more info here: [http://www.uscis.gov/portal/site/uscis/menuitem.5af9bb95919f...](http://www.uscis.gov/portal/site/uscis/menuitem.5af9bb95919f35e66f614176543f6d1a/?vgnextoid=3f412bfb4cf81310VgnVCM100000082ca60aRCRD&vgnextchannel=44eec665e1681310VgnVCM100000082ca60aRCRD) The other thing was the E2 Visa, however for some unknown reason, it is not available to Indians due to lack of treaty. More info here: <http://en.wikipedia.org/wiki/E-2_visa> As taurussai has mentioned, work on the application and interview and the amazing YC community can help sort out the rest. P.S. - If any of YC Community would be open to sharing how to make it work, it would be great for future YC candidates.

</comment><comment><USER5> Not directly related to your question. But hope this can inspire you :-)

"After being rejected by Drona[1] on account of his not being of Kshatriya lineage, Eklavya[2] embarks upon a program of self-study in the presence of a clay image of Drona. He achieves a level of skill superior to that of Arjuna, Drona's favorite and most accomplished pupil"

[1] <http://en.wikipedia.org/wiki/Drona>

[2] <http://en.wikipedia.org/wiki/Ekalavya>

PS: If the anology is not self evident. PG/YCombinator is _Drona_ in this case, and you are _Eklavya_

Edit: HN--> Ycombinator

</comment><comment><USER6> Get in touch with guys from interviewstreet.com.. they have been there, done that

</comment><comment><USER7> You can do it -- a few companies in my batch (W12) have done it and we have a large YC international community to help answer all your visa questions. Answering your first 2 questions (briefly):

1\. Don't know -- my thoughts would be it depends on customers (if it is worldwide/local to India, team location etc.)

2\. Yes, it is possible through H1b/O1 visa (a number of founders have done/doing it)

* Would recommend focusing on the application and interview -- the YC team,international YC founders community and recommended immigration law firms will help you once you are in...

</comment><comment><USER8> This question is also in my mind. Will tourist visa work for YC?

<comment><USER9> That would be a question I have as well. AFAIK know, there it no Visa suited for YC unless you can do ESTA.

<comment><USER8> Someone told me that you can't register a business or incorporate a company as a tourist. So maybe, tourist visa will not work for YC? Because AFAIK you need to be incorporated in YC, right?

Also, can you explain ESTA to me?

<comment><USER10> A non-citizen of the US can register a company in certain states (Delaware is the most common one). I'm an Indian Citizen and our company is a C-Corp there. I go back and forth on a Business Visa.

</comment></comment></comment></comment><comment><USER11> I think you should follow the standard procedure first <http://ycombinator.com/howtoapply.html> so, make a video, fill the forms <http://ycombinator.com/apply.html> and submit them.

btw, in doing so you will clarify and refine your ideas, that is why they insist on this procedure. It saves not just their time, but your time and money.

Now a few things to consider. There are, of course, many people were relocated to work for, or create a startup in Valley. This is the crucial point - <USER2> supports only US-based startups.

They have power, connections, influence and almost unlimited money in valley, but can't do anything outside US. There are other connected guys in other countries.) So, you will work for them in US or, if your idea is that good, will bootstrap your company in the US (with them as privileged stockholders).

There is no way they can finance any business outside US, and you should try to find a domestic investors.)

<comment><USER12> This is not true. There are YC companies based outside the US. Songkick is the first that springs to mind, based in London.

IIRC, you can take your company back to any country (I'm sure they'll quiz you, why you think it's appropriate.) You will, however, need to move to SV for three months after a successful application and interview. After that, it's up to you..

</comment></comment><comment><AUTHOR> Thanks taurussai and brackin - looks like there is hope ;) ! Let me just go ahead and submit the application.

rehack - I am Eklavya but to fight the fight, I need to go to my Kurukshetra! ;)

</comment><comment><USER13> you can get some info here: [http://benmetcalfe.com/blog/2012/02/what-visa- type-do-you-ne...](http://benmetcalfe.com/blog/2012/02/what-visa-type-do-you- need-exactly-to-legally-participate-in-y-combinator/)</comment>


Postgres Indexes – Expression/Functional Indexing - <AUTHOR> http://www.craigkerstiens.com/2013/05/29/postgres-indexes-expression-or-functional-indexes/ <comment><USER2> Something really cool you can do is functional _unique_ indexes:

        CREATE UNIQUE INDEX foo_fidx ON foo (lower(a));

Will reject values of "a" that have the same lower-case value as something that already exists, even if the values of "a" are different. Exclusion Constraints[1] can make use of this, as well.

Also, you can do _partial_ indexes, which have a WHERE clause. You can combine those with unique indexes, too:

        CREATE UNIQUE INDEX foo_idx ON foo (lower(a))
          WHERE b <> 0;

Exclusion constraints also accept a WHERE clause.

Additionally, if you do a partial and/or functional index, then postgres will collect stats specific to the function and predicate, which improves plans even if the index isn't used.

[1] [http://www.postgresql.org/docs/current/static/sql- createtabl...](http://www.postgresql.org/docs/current/static/sql- createtable.html#SQL-CREATETABLE-EXCLUDE)

</comment><comment><USER3> IMMUTABLE STRICT is used properly in all of these examples. However, it is important to not lie to postgres and declare your functions are IMMUTABLE (always same output given same input) and STRICT (no side-effects) when they're not, or you'll get wrong answers.

<comment><USER4> Devil's Advocate: It is important to get them _right_, because postgres will cache the tar out of a IMMUTABLE function result, and <mumbling>something something optimize STRICT calls, maybe?</mumbling>

<comment><USER5> An immutable mark will allow the optimizer to constant-fold an expression that contains only IMMUTABLE operations. It basically has to believe you on this one, and being wrong is not good at all.

STRICT is less advisory: if specified, the function will not be evaluated if it any NULL is seen in the argument list (NULL will be yielded immediately), without ever passing control to the code in the function.

<comment><USER6> well, beside optimization, a function marked immutable is important because indexing on function return values makes only sense if the function is idempotent.

<comment><USER7> Idempotent is probably not what you meant.

It makes sense to index on, say, `reverse(name)` (to perform suffix searches), and that function is immutable and deterministic, but it is not idempotent (except on palindromes).

<comment><USER6> wow, there seems to be a degree of confusion about this term, depending on the context.

Mathematically speaking it means that you can apply it multiple times and get the same result, i.e. reverse(reverse(name)) == reverse(name)"

However, I heard it using it many times where the correct term would be "pure function" (one whose output is defined solely by its input). But this is clearly misleading.

I guess that the confusion stems from the use of "applying multiple times". Formally multiple function application means f(f(x)), and not simply repeating function evaluation f(x); f(x).

Furthermore I saw people distinguishing "side effect idempotence" (observed by all pure functions) and "return value idempotence".

To add more confusion to that, some some HTTP (GET/...) operations are called idempotent, even though it's clearly not in functional sense (if you take the output of the GET and feed it as argument to another GET, you won't get the same result again), but only meaning "side effect free".

</comment></comment></comment></comment></comment></comment><comment><USER8> Did anyone get a cached copy of this article? Seems like there is a DNS failure with Heruko, either that or Craig nuked his blog for a day.

<comment><USER9> Yeah doesn't resolve for me either

<comment><AUTHOR> Sorry was an issue in mucking with my SSL cert, should be all back now.</comment></comment></comment>


Show HN: Stomped.io – Massively Multiplayer HTML5 Platformer Game - <AUTHOR> https://stomped.io <comment><USER2> I don't like these "share to unlock" features, I don't have accounts with twitter or facebook.

</comment><comment><USER3> Please make the "continue" and "play" button stay in the same location, or make enter/space proceed.

</comment><comment><USER4> Wont start. Dont know if it has anything to do with me being on mobile.

</comment><comment><USER5> This is surprisingly addictive for such a simple game.</comment>


Power corrupts, but it only corrupts those who think they deserve it. - <AUTHOR> http://www.economist.com/sciencetechnology/displayStory.cfm?story_id=15328544

<comment><USER2> This sounds like Douglas Adams' theory of power is being vindicated. In his Hitchhiker's "trilogy," Adams sets up a convoluted situation where the Universe is ruled by a humble "Old Man In A Shack" since people who want power are therefore unqualified to possess it.

<comment><USER3> Or Steinbeck's "The Short Reign of Pippen IV".

</comment></comment><comment><USER4> Would like to see a follow-up to see if the ones who are in power but do not think they deserve it eventually, or can be made to, come to think that they deserve their power.

<comment><USER5> Me too. I think it would complete the verification of Lord Acton's observation quite nicely.

Intuitively I think the final piece is obvious, but lots of things seem obvious and yet turn out not to be true.

I seriously doubt somebody would remain in a state of "hypercrisy" very long. It seems an uncomfortable and unnatural state of affairs.

</comment></comment><comment><USER6> At the point it becomes most interesting the author cops-out with a trite conclusion.

This speculation:

        Hypercrisy might thus be a signal of submissiveness—one
        that is exaggerated in creatures that feel themselves to
        be in the wrong place in the hierarchy. By applying
        reverse privileges to themselves, they hope to escape
        punishment from the real dominants.

.. steers further awry:

        Perhaps the lesson, then, is that corruption and
        hypocrisy are the price that societies pay for being
        led by alpha males (and, in some cases, alpha females).
        The alternative, though cleaner, is leadership by wimps.

For those interested, the model for austere leadership is Cincinnatus: <http://en.wikipedia.org/wiki/Cincinnatus>

</comment><comment><USER7> The experiment is fascinating, but the author draws too strong of a conclusion: first, the "I didn't deserve it" powerful could exhibit 'hypercrisy' for other reasons, including the old saw "to those who are given much, much is asked in return". I mean, let's not get _too_ cynical here. Second, even if _on average_ the "I deserved it" powerful are hypocritical, that doesn't mean that _all_ of them are; it just means we have to look more carefully for the outliers.

</comment><comment><USER8> That's quite horrible.

That means that people of power consists of two groups. First group built of individuals thinking they deserve power, who take much for themselves illegally and other group of individuals thinking that they do not deserve the power, who perceive immoral actions of the people from first group less immoral then they actually are.

<comment><USER9> The two groups were constructed for the experiment, to emphasize the difference. If you're saying that powerful people in the real world are divided into two groups, that is your own opinion, not something that the study concluded.

<comment><USER8> Yes. I was reporting realization that came to me after reading this, not the results of the research. My opinion is of course simplified (there might for example be a third group of people in power that don't have opinion on whether they deserve that power or not who behave like rest of general population and judge morality of acts closer to average judgment).

What struck me that part of people who have power, those who have high moral standards for themselves (possibly induced by feeling that their power is undeserved) might tend to overlook immoral actions of their peers just because of some glitch in our biology.

</comment></comment></comment><comment><USER10> So what they are saying is rather that "power attracts the already corrupt" you just don't get to see their true colors until they are in power.

Your stereotypical abusive politician is typically someone who has been a nasty piece of work since childhood, they were just powerless to act on it until some suckers voted them into office.

</comment><comment><USER11> I think this is an inherent problem with any social system that encourages a "one up/one down" mentality. I suspect the antidote is to promote a culture where all people are treated with equal respect, which isn't easy to do at all.

One problem that I have witnessed is that "nice" leadership tends to get disrespected and abused. When my kids were younger, at one point I spelled it out clearly for them that if they didn't quit being pains in the butt, the nice mommy they were taking for granted could disappear (along with a great many privileges they took for granted) and be replaced by an evil mommy. I choose to be nice because I prefer it, not because I don't know how to be awful. My kids stopped taking me so much for granted and stopped assuming that I was some kind of doormat.

As an example with adults, I currently participate in an online forum where the moderator is sometimes viciously attacked. The attackers then justify their attacks by saying things like "She must not mind. If she did, she could remove me." Things improved after I got after the attackers and then, when someone suggested the moderator could leave, stated publicly that "Maybe it is lost on you that she is the moderator and the only reason her attackers can remain is because she is a great deal more tolerant than they are." The entire tone of the forum changed.

As long as most people are so generally disrespectful and so willing to take good things for granted, "corrupt" leaders may be the only kind who can survive.</comment>


Tell HN: 99 cent domains at GoDaddy - <AUTHOR>

GoDaddy currently has a 99 cent dot com sale. Just use coupon code: BOWL2010.
Sadly it's only 1 per account, and can't be used for renewals, but I just got one.
Great way to save $6.50 <comment><USER2> Oh, it IS a good deal, especially if you're already inclined to use Godaddy.

As an aside, Deal-seeking Twitter users should probably go ahead and follow @dealsplus, as they broadcast this same deal last night, and often broadcast numerous deals throughout the day.</comment>


Artificial Tongue Is Sweeter Than Real Thing - <AUTHOR> http://www.wired.com/wiredscience/2009/08/tastesweet/

<comment><USER2> I thought this article was going to be about beef tongue, which is rather bland compared to muscle meat.</comment>


Why Amazon Vine is a Threat Worth Talking About - <AUTHOR> http://jonbischke.com/2009/06/12/why-amazon-vine-is-a-threat-worth-talking-about/ <comment><USER3> I think the problem is that a lot of people misuse reviews. When I read Amazon or Yelp ratings, I rarely look at how many stars something has. People add or subtract stars for reasons that don't make sense and don't mean anything. I have seen 3-star reviews on Yelp with the text, "This is the best food I've ever had in my life, the service was amazing, and it was cheap." Why that is not 5 stars is beyond me, but it's the Internet... and people are weird.

When looking at reviews, I read the content of the review to see if what upset the reviewer would also upset me. (I was looking for dentists on Yelp the other day, and saw a review that was something along the lines of "My insurance wouldn't pay the claim, so they made me pay!! Bastards!!". Although that one star review brought down the overall rating of the business, it is a problem with the review, not with the business. The review was for his insurance company, not for the dentist.)

Similarly, I read glowing reviews and look for the parts I care about. If I'm reading a review of a digital camera, I really don't care if the reviewer thought it looked nice or that the box was pretty, I care how long it takes from the time I turn the power switch on to when I can take the first picture. Obviously the reviewer could lie about this, but I've never seen it happen.

So, you get out what you put in. If you just look at the stars, you could probably save yourself a lot of time by flipping a coin.

<comment><AUTHOR> I do the same. But many people don't have the same level of sophistication or simply don't have the time to spend so they just look at the aggregate review and buy the top-rated product. That why I think Vine is potentially subversive.

I'd love to see Amazon reviews have a HN/Reddit/Digg-style up/down vote system where crap reviews automatically drop off and aren't factored into the overall score.

</comment></comment><comment><USER4> It is awfully tempting to start reviewing products with glowing praise in hopes that you will soon start getting free stuff in the mail.

<comment><USER5> Not to mention, if I receive something for free my opinion of it is likely higher than if I paid for it.

Case in point: the Motorola RAZR that I inherited a while back. It's a solid enough phone, got the right features, and for _free_ it's very damned good!

But charge me $100 for it and watch my review go the other way.

Even without the arguably malevolent notion of positive-reviews-for-more-swag, the mere fact of receiving something for free likely induces a more positive review.

<comment><AUTHOR> Yeah, I was looking at ~$250 products that had tons of Vine reviews. If you're getting something worth $250 free to keep I gotta thing that's going to affect how you review it.

</comment></comment></comment><comment><USER6> The point about Amazon Vine is you have to review X products to get more.

So if I've got four books already that I haven't gotten around to reading, and a new one pops up in the newsletter that genuinely sounds worth reading, I'll pop on over to one of the four I have and write a completely fictional review for it based roughly around what everyone else is saying and the book's description.

This enables me to get as much free stuff as possible without reading books that turn out to be nothing like their descriptions. And it's people like me doing this that contribute to the immense Vine bias.

I have read bad books on Vine and reviewed them, I've also read some really good ones, but half the time it's all complete fiction so I can get as much free stuff as possible.

</comment><comment><USER7> I think the community will auto-correct and weed out the reviewers who are not sincere. For example, if a user buys something based on Amazon reviews (of a Vine member, say), and discovers that the review was insincere, he/she will most likely go to Amazon and give a negative rating to the member/particular review, which will probably feed back into the Vine members reputation, which will in turn be used to determine eligibility for the Vine program.

Agreed that it'll take a while for the system to reach the critical mass, it is, nonetheless, a system that will work very well after it reaches the tipping point.

<comment><USER8> Alternatively, users will notice sooner or later that Vine is less about trusted reviews than _'Actual customer testimonials!!1!'_ and ignore or even avoid such products. Now maybe it's just me and the mass of people are gullible morons after all, but these kind of initiatives have a poor history on the internet compared to tabloids and TV.

 _Or so I thought until I discovered the secret to making_ REAL _money - <USER2> now I'm going to share it with_ YOU.

</comment></comment><comment><USER9> The blogger needs more evidence.

.

He should write a script to harvest a subsection of Amazon. Then he should parse the results and see how closely correlated the Vine-to-Bad-Review there is.

.

A couple of data points here or there are not very convincing, but if he sampled say 10,000 products he could say:

* How many have reviews from Vine?

* Of those Vine reviews, what is the distribution of votes?

* Of non Vine reviews, what is the distribution?

<comment><AUTHOR> I'd love to do this if I was a bit smarter. :)

This is the kind of thing that Amazon could, and should, do. If they become very transparent with Vine then I think this could be a good success. But at least to date Vine feels very opaque and that's not a good thing.

</comment></comment><comment><USER10> At least the Amazon Vine reviews are clearly marked with a _Vine Voice_ badge.

</comment><comment><USER11> Didn't the have a problem with Microsoft Vine, the names can confuse people. There was an interesting case of Mike Rowe Soft, where Mike Rowe had to surrender the domain for it rhymed with the word Microsoft - <http://en.wikipedia.org/wiki/Mike_Rowe_(student)> .

I'm not sure if we're gonna see some Amazon Vine Vs Microsoft Vine name battle...

</comment><comment><USER12> I know that amazon is concerned with their bi-modal review distributions (most people review a product because they love or hate it for specific reasons, rather than because they are interested in reviewing-as-such). That might be what amazon is trying to address.

Traditional reviewers always get free stuff.

</comment><comment><USER13> What Joel has to say about reviewers accepting free products for review: <http://www.joelonsoftware.com/items/2006/12/28.html>

</comment><comment><USER14> It seems to me the solution would be not to rely on Amazon reviews. IMHO specialized "price watcher" sites with a large enough community do a better job in this respect.

</comment><comment><USER15> Virtually all traditional media reviewers get their gear for free (though all the good ones send it back or pay for it after the review).

<comment><USER8> When I used to work at PC magazine, (in London, ~1993-4) we never gave anything back unless it was a prototype or something. Just as well, considering the pittance we were paid :-)</comment></comment>


Ask HN: What are top 5 websites and mobile apps you visit often?Are they same? - <AUTHOR> <comment><USER2> BaconReader - Reddit app

Hacker News

[http://www.dotnetrocks.com](http://www.dotnetrocks.com)

[http://www.hex.pm](http://www.hex.pm)

[https://soundcloud.com/elixirfountain](https://soundcloud.com/elixirfountain)</comment>


Do animals masturbate?  - <AUTHOR> http://www.slate.com/id/2223013/pagenum/all/ <comment><USER2> For those who don't want to follow the article: It doesn't ask the question (because the answer is obviously yes, as some dog owners can testify). It asks the more interesting question of why the behaviour evolved and why is it so widespread even in species that don't obviously experience sexual climax.

I am hoping the mental image of the walrus will pass though...

<comment><USER3> Surely the answer as to why it evolved is obvious - it takes more energy during development (and a lot of selective pressure during evolution) to make a reproductive system that produces pleasure _only_ during reproductive sex acts than one that can produce pleasure in non-reproductive situations. Hence, masturbation exists.

I _love_ the statistic that male Macaques spend 1-6% of their metabolism on production of ejaculate though.

<comment><USER4> > Surely the answer as to why it evolved is obvious

One of the recent results in human fertility is that daily ejaculation results in healthier sperm and greater fertility.

Causality is rarely simple.

<comment><USER5> > daily ejaculation results in healthier sperm and greater fertility. > Causality is rarely simple.

Sure, but I think here you are being overly adaptionist. Put another way, if we lived in a world where daily ejaculation did not improve sperm quality, would we still expect animals to masturbate? I would say yes.

It's just occurred to be that was in fact answered by the comedian, Jasper Carrott:

Q: Why do dogs lick their bollocks? A: Because they can.

<comment><USER4> > Put another way, if we lived in a world where daily ejaculation did not > improve sperm quality, would we still expect animals to masturbate? I would > say yes.

We probably do live in such a world. The "sperm quality" issue probably doesn't come up with animals that spawn at a given time of year.

Note that "sperm quality improves with masturbation" is a partial explanation for why masturbation is pleasurable for those species who do.

</comment></comment></comment></comment></comment><comment><USER6> The article says turtles masturbate.

But I'm not even sure how you'd really know something like that.

It's not like I've ever seen an excited turtle, much less a really, really happy one.

I mean, not to get too explicit, but if I saw a turtle shifting slowly back and forth on a rock, I'd think _confused turtle_. Not necessarily the other thing.

<comment><USER7> Turtles and tortoises make a noise that will tell you quite definitively what's going on.

It's tough to describe this tactfully, but some tortoises at the zoo here were feeling particularly amorous one day and you could hear them from a quarter mile away. Watching the parents try to explain to their kids what was going on was good for a laugh though.

</comment></comment><comment><USER8> The more important question is, does Animal from The Muppet Show masturbate?</comment>


Ask HN: Which SDK company's tutorials you like? - node-bayarea Hi there, I'm responsible for creating tutorials for our SDKs. I'm trying to get some inspiration from other companies who might have built really cool interactive tutorials. Wondering if you like any, that you'd like to recommend? <comment><AUTHOR> I remember Parse tutorials fondly (now mostly open sourced) [0]. When you needed a token or application key in a snippet of code it will be provided dynamically from your selected project so the code is ready to go (instead of "go to a complex config page and copy paste).

I also liked the interactive part where they wait for you to send a request from the SDK and then congratulate you, and display the actual values you sent. It made me feel I was getting productive very quick.

[0]: [https://parseplatform.org/](https://parseplatform.org/)

<comment> node-bayarea Thanks! Looks great!

</comment></comment><comment><USER2> Was recently provided with a PYNQ dev board from Xilinx. Docs as code makes it very easy to get setup. App development occurs right in Jupyter notebooks. And the examples are also provided in the form of reconfigurable Jupyter notebooks

[https://pynq.readthedocs.io/en/latest/index.html](https://pynq.readthedocs.io/en/latest/index.html)

</comment><comment><USER3> TwilioQuest is a fun intro: [https://www.twilio.com/quest](https://www.twilio.com/quest)

</comment><comment><USER4> Stripe</comment>


Show HN: Dialogue – Write a movie the same way you text - <AUTHOR> https://itunes.apple.com/us/app/dialogue-screenplay-writer/id1282896057?mt=8 <comment><USER2> Why would I use smartphone for this?

<comment><AUTHOR> The goal was to provide a more enjoyable writing experience as an alternative to the more traditional screenplay writing process. When your away from your desktop and you want to write a couple of scenes down quickly our app is a nice place to get it done. You can transfer your work from the app to the desktop and continue to write.</comment></comment>


Ask HN: Is pay for ad-block a feasible model? - <AUTHOR>

Do you think people would be willing to pay for ad-block?  Most every one of my non-technical friends and family hasn't the slightest idea it exists.
I set up a splash page and ran some google ads.  It had a pretty low CTR but a few hundred cliks and a handful of email signups.
What do you think?  Worth pursuing?
www.getwebshark.com <comment><USER2> The problem is, the people that would know about your ad-free service would be the same people that know about Adblock Plus, so it would be a hard sell. Perhaps if you marketed it to older generations with no technical experience it might work out, but they would probably want to buy the software from a store.

<comment><AUTHOR> You'd be surprised how many people don't know ad-block exists. I'm not just talking about my 65 year old uncle, John, either. I can only speak from first hand experience, but a majority of my 20-something year old friends are in the dark too.

Only 1% of US internet-goers have it installed. The hard part will be educating the other 99%.

</comment></comment><comment><USER3> The thing about Ad-Block is that is does have the problem with differentiating between content and ad's from time to time. One example is when trying to watch a video on Yahoo or Hulu. Ad-Block does not have the ability to disable those type of ad's and for the most part those are the type of advertisements the general community would want to eliminate. I myself use Ad-Block and the biggest benefit I see from it is blocking the ad's on YouTube videos that everyone seems to hate. With that said I also disable for certain sites because I see the power in having tailored advertisements i.e. Facebook so for them I leave it disabled. Selling it as a service would be difficult because for the most part people would only pay if it was a big inconvenience and for most people it's not. The fact that their is at least a marginal benefit for the ad's they see also makes it much more difficult.

</comment><comment><USER4> Good question, what were some of the keywords for your promotion? Did you target accordingly? I'd think that simply putting up an ad on Google with the default network settings resulted in low CTR because the people who would have seen this are already using other methods.

</comment><comment><USER5> Yes, you can make a business out of it. Whether or not its worth pursuing, that's totally up to you.

</comment><comment><USER6> Not really.</comment>


Show HN: Automated time tracking *can* be privacy-first - <AUTHOR> https://wisetime.com <comment><USER2> Sounds interesting, looks cool, but says it's "for attorneys". ..?</comment>


How to intentionally get denied entry into the United States? - <AUTHOR> http://travel.stackexchange.com/q/24540/101 <comment><USER3> I fear this will get a lot of "Just say no" comments from people that don't understand that the author is from Pakistan and most likely grew up in a completely different culture than most of us are used to.

And it seems like she's not villing/able to cut of contact with her family as I would maybe do if I were in her place, but I'll never be so it's hard to even imagine what I'd do.

<comment><USER4> One of the "just say no" sayer here. I do understand, that the author is from Pakistan and currently studying in Spain. But, even though I think family is important, sometimes you have to value your own will over that of the family, no matter the cost. My father lost almost all of his friends, decades of relations, and didn't had contact with his family for years, because he decided to leave the "sect" and marry a woman from Finland whom he loved instead of the 2nd degree cousin the family has designated for him. This was in Christian Switzerland not Pakistan, but still a lot of pressure to handle.

<comment><USER5> Christian Switzerland doesn't have a history of honor killings.

<comment><USER6> Well, not a recent one.

Basically, Western society got this crap out of the way a few hundred years ago. We still have "slut shaming" and other milder vestiges.

</comment></comment></comment></comment><comment><USER7> Families are MUCH closer in Pakistan and the rest of the Middle East than they are in the western world. Doing things against the families will can get you in big trouble and leave you without your family at all. The main difference between the Middle East and the West is: in the west, you grow up and you are taught by your parents how to stay on your own. That is why Westerners often only see their parents and brothers and sisters occasionally. In the Middle East, you grow up to be a good part of the family for the rest of your life. As I married a girl from the Middle East I had to learn and feel the differences and resulting occasional tensions. So to say it short: you normally are not supposed to leave your family in Pakistan. So this girl feels she is in great trouble, even if the solution may seem so simple for us.

<comment><USER8> Pakistan is not a Middle Eastern country

<comment><USER9> Yeah and my dad (Brazilian) is fond of saying that Brazil is not a Latin American country because of language and cultural divide between Spanish vs Portuguese colonies.

Fine, both of those are valid beliefs. But you shouldn't feel the need to inject them as a tangent in random conversations to educate people. You will never ever win this battle.

<comment><USER10> But Pakistan is not a Middle Eastern country. It's not a belief, it's a fact. I think he was right to point that out.

<comment><USER9> Names are human constructs not facts.

</comment></comment></comment></comment></comment><comment><USER11> This doesn't sound like a great idea. A friend of mine with an Indian passport and a valid UK work visa was visiting Northern Ireland and decided to try to sneak a quick bus trip into Republic of Ireland. Their bus was randomly stopped and everyone's passports were checked (these are pretty infrequent, I believe), the police quickly noticed they didn't have a valid visa for Ireland, took their details and then took them back to the North. Later that year he had a bit of trouble visiting mainland EU, the immigration officials cited his previous attempt to illegally enter Ireland - evidently it had been logged in some EU immigration database and can follow you around for a while.

And this is just Ireland, I imagine the repercussions of getting denied from the US are a little more severe.

<comment><USER12> Being denied entry isn't illegal, and isn't necessarily going to adversely affect future entry attempts. Overstaying your visa, or illegally entering a country on the other hand is a crime. If you have committed crimes in a country, you _will_ have a harder time getting in next time.

<comment><USER13> Overstaying your visa is not a crime. The Immigration and Nationality Act (INA) contains only civil penalties for an immigrant who overstays her visa. This means that immigrants with an expired visa will not be charged criminally or serve time in jail.

Entering country illegally however IS a crime.

</comment></comment></comment><comment><USER14> Does Spain have an equivalent to the UK government's "forced marriage unit" ( [https://www.gov.uk/forced-marriage](https://www.gov.uk/forced-marriage) ), an agency whose job is to help people in this kind of situation?

<comment><USER14> Looking closer — I think no?. Some of the European countries which criminalize forced marriage, according to this June 2012 survey ( [https://www.gov.uk/government/uploads/system/uploads/attachm...](https://www.gov.uk/government/uploads/system/uploads/attachment_data/file/157829/forced- marriage-response.pdf) ), include: Austria, Belgium, Cyprus, Denmark, and Germany.

In Austria: "Forcing someone into marriage is a distinct criminal offence in Austria. Austrians and people living in Austria are facing legal consequences for such actions only if this kind of marriage occurs within the country's borders. From January 2012 the Federal Government has amended the anti-forced marriage law to allow prosecutors to press charges against perpetrators over forced marriages abroad.

In Belgium: "Forcing someone to marry is a criminal offence."

In Cyprus: "Forcing someone to marry is a criminal offence."

In Denmark: "The Danish Criminal Code includes an offence of unlawful coercion, prohibiting the use of threats by a person to force another person to do something against their will. This offence would apply to marriage if threats were used to force a person into marriage against their will. The penalty for this offence ranges from a fine to a period of imprisonment not exceeding two years."

In Germany: "Forcing someone to marry is a distinct criminal offence and can be punished by up to five years in prison. The law also gives non-German citizens who are forced by their husbands/families to leave the country after their marriage a legal right to return to Germany. "

I don't know what I'd do in this situation — I'm not even sure I can understand what it's like. But with a Schengen visa and Spanish residency, one option might be to move to Germany and seek protection from the government there. This is a tough situation for people to be in.

</comment></comment><comment><USER15> If she's coming over to live, then she should be denied entry anyways. Perhaps just stay straight-out "I'm moving here." Maybe throw in something about maybe getting a job "To have more money for our family." Neither of those are total lies, but any CBP agent that's not asleep should block entry. She might even just tell them the situation, ask to see a supervisor and go from there. They may be able to provide something better on her record that way.

Although it can really depend on who she gets. My wife came over to see me after I moved to the US after just losing our daughter. She had a 10-year multi-entry visa, had come and gone several times before. They held her for a couple of hours, went through all her stuff (which is to be expected), but then demanded to know why she was sad about losing a child, why she had written about her child if she had died, and on and on. My wife decided she'll never fly through the US again.

Once I got an agent, first thing out of his mouth was "you're going to miss your flight". When I said he didn't know when it was (I had a 3 hour layover), he said it didn't matter, he'd make sure. Other times, they barely even glance up and wave me through.

<comment><USER16> > When I said he didn't know when it was (I had a 3 hour layover), he said it > didn't matter, he'd make sure.

Why did (s)he do that? Did you miss your flight?

<comment><USER15> Every now and then, I get a CBP agent that is having a bad day. Most of the time they are professional, polite, and efficient enough. This guy went on about all sorts of things, including stating that attending a tradeshow required a work visa.

I didn't miss my flight because I had a long layover. He took my passport and sent me to secondary control. Upon admittance, one of the agents there rolled his eyes and speedily got me taken care of and on my way. He did succeed at wasting 40 minutes of my time though.

</comment></comment></comment><comment><USER17> I think this will work:

\- "What's the purpose of your visit?" \- "I will be looking for a job in the U.S." \- "But you have a visitor's VISA here" \- "Oh.. mmm.. but I am coming here to work" \- "I am sorry this is not going to work out"

<comment><USER12> Or, rather than lying to the border agent (which I believe is a crime in the US, isn't it?), she could simply tell the truth: that she's visiting her husband and that she'll most likely be coerced to overstay her visa.

That should get her entry denied too.

<comment><USER18> Precisely. Not sure if it is a crime or not (probably!), but lying is never a good idea, specially to an immigration agent.

Just telling the truth should suffice. The only issue is if it will cause trouble later on should she try to enter again. I assume it would.

EDIT: There is probably a 'alien will probably overstay' flag somewhere. Not a 'alien will overstay provided she is still married to an out of status alien'.

</comment></comment></comment><comment><USER19> It's a pity I can't answer on the SE but I have experience in this matter, I came to the US (through Newark) once with a visa to stay for 6 months, without proof of financial support, without contact information for somebody in the US, reluctance to tell my purpose, and a tent as my means of accommodation. I was taken to a back room where they were going to deny me entry, but I manage to persuade them that I had an uncle living in Texas and a friend in Oregon.

So my advice is, go there without money, accommodation, contacts or purpose, and they won't let you in.

</comment><comment><USER20> Hacker News is very qualified to give this person technical advice, but her problem originates in human relationships, and the solution requires some amount of diplomacy.

Everything we say on this matter is useless until confirmed by an outside party not afflicted by an ultrarational engineer brain. That said...

In recent years, the US government has ramped up its training for federal employees on recognizing and interdicting human trafficking. It might suffice to tell the border agent, "I have been subjected to a forced marriage, and the man's family is attempting to import me to the United States against my will. Once here, I will be little more than a slave. But if I refuse, I will probably be murdered. Will you help me?"

This is likely to make a bad situation worse, but that's the best I can come up with. The lady is probably better off traveling to a Germanic or Scandinavian country and appealing to a feminist organization instead of getting on a plane to the US.

</comment><comment><USER21> Go to the Spanish authorities, tell them the situation (illegally living in the USA) and that you fear for your life and need asylum in Spain.

F*ck the sort of family that marries you to someone 15 years older against your will, frankly.

<comment><USER22> Would forced marriage be okay if the age difference was smaller?

</comment></comment><comment><USER23> I think the traditional solution is to go say yes, move in. Start breaking things (dishes and stuff) until he asks for a divorce. Bonus points for making it plausibly an accident. Go home. At least that is what I have read about Morocco where the divorce rate is relatively high.

It seems relatively common elsewhere as well, in my experience.

One of the things that is not to like (especially if you are a woman) in many Middle Eastern countries is that the household matriarch is the husband's mother and the households are patrilocal. This means that if you are a woman and you get married, you end up as a very low-status individual until your first son is married and then you have status and power to make his wife as miserable as you were.

So it isn't a good situation but one thing to keep in mind is that being in a more individualistic culture gives you options. My recommendation would not be to try to get denied entry at all but to go. Then evaluate your options, build contacts, and see what you need to do. The US culture and legal system doesn't support the same kinds of things and this can bring some power.

</comment><comment><USER24> Easy, when asked why you are are entering the states say 'no reason' and get a 24hr to year long ban. I've tested this when my idiot friend gave that response while we were driving across the peace arch border.

<comment><USER25> Might be different if you have a Canadian passport, than if you have a Pakistani passport.

</comment></comment><comment><USER26> Most of suggestions people give on this problem is like this;

Problem: Site doesn't work in IE

Solution: Then don't use it.

It is not that easy.

Her problem is really complex one. As i can not answer it on site (protected question), i will try to give some ideas to her here.

She needs to somehow trick the family members and the husband in US. One solution can be getting a fake paper that wants her to give information about the people she is related in US. This can stop family members asking her to come to US, since her husband is not legally living there. But connecting this fake paper to her travel to US is little tricky. Family needs to somehow believe that it is coming from government. Maybe women rights association can help with this one, if she can reach them.

The other option can be to somehow make them believe that she took the flight but they send her back. In this case she needs to find a really good excuse that family members will believe and will not investigate further.

If you think these are reasonable ideas, please let her know on travel.stackexchange, because i can not.

</comment><comment><USER27> "I want to start a company, employ US citizens, pay taxes, and drive GDP growth."

<comment><USER28> The officials deciding about your status most probably couldn't care less.

This is not an opinion but my experience (I tried exactly that line tough in a different country)

</comment></comment><comment><USER29> My advice to her: NEVER get in trouble with any country's government on purpose, completely abandon this line of thought and figure out something else. I bet she would rather live with her "stupid in-laws" than in a Federal PMITA facility.

<comment><USER30> IANAL, I doubt that the penalty for being denied entry is anal rape in a federal penitentiary. I thought the penalty was, you know, _being denied entry_.

</comment></comment><comment><USER31> One other option worth considering:

1\. Loose your passport 2\. Get a new passport 3\. Apply for new US visa to keep parents happy 4\. Get rejected at the visa office

Just avoids re-entry, and buys time may be till she is done with her college.

</comment><comment><USER32> I am clearly not a lawyer: if you tell passport control that you lost your drugs on the plane, there will be no evidence to prosecute you, but they probably won't let you in.

More seriously, just don't get on the plane, then after a period of time contact your family and tell them you got refused entry. Spend a day or two at the airport or a nearby hotel.

<comment><USER33> No no no, please do not mention anything about drugs, you will get a lifetime ban.

<comment><USER34> Yes, but that one sure way to get denied entry.

Under Sec. 212 (8 U.S.C.1182) you are ineligible to receive visas and ineligible to be admitted to the United States if you 'voluntarily admit to having committed a crime involving moral turpitude

Here's a recent story: [http://www.vancouversun.com/news/White+Rock+woman+barred+fro...](http://www.vancouversun.com/news/White+Rock+woman+barred+from+after+admitting+marijuana/8865511/story.html)

</comment></comment></comment><comment><USER35> I'm surprised no one came up with the "NO-FLY" list excuse. If she goes to the airport alone, that's trivial---she goes to the airport, waits an hour, comes back and says, "I was refused because I am on the US' no-fly list." The US does not confirm nor deny any name on the list, so it's hard to check.

</comment><comment><USER36> Interesting story but I hope it doesn't spread. Would suck if her family sees this and figures out it is her.

</comment><comment><USER37> Easiest way is to strike out your visa in your passport.

</comment><comment><USER38> Every single piece of advice amongst the top comments over there is straight up idiotic.

</comment><comment><USER23> An obvious answer is go to the US and sue for divorce, and return to Pakistan?

<comment><USER5> Except their marriage is probably a Pakistani one.

<comment><USER23> Question: Will Pakistan recognize the divorce as long as they were living in the US at the time? My bet would be on yes.

<comment><USER5> An Islamic marriage ([http://en.wikipedia.org/wiki/Marriage_in_Islam](http://en.wikipedia.org/wiki/Marriage_in_Islam)) is between a man and the wali of a woman, who gives her to the husband to be his wife, NOT a contract between the two members of the marriage. A wali is a "guardian" of a women. (or really, owner)

She needs consent from her wali. Pakistan can just say "did your wali sign off on this? Nope? Well that's not a valid divorce."

There's no actual legal recourse for not accepting legal agreements made in other states. Hell, many states in the US don't recognize legal (homosexual) marriages from other states.

<comment><USER23> But Pakistan has a hybrid Islamic/British legal system. This becomes a conflict of laws question and I dont think you can simply ask "is it Islamic?"

</comment></comment></comment></comment></comment><comment><USER39> I know better than to try to give advice when I can't relate at all to her situation.

But I would just like to take this opportunity to say "fuck you" to her relatives in the United States. Economic opportunity and personal liberty are a package deal, you want one without the other and you're playing with fire.

You're guaranteed to lose, either quickly or slowly. Quickly if this young woman continues down the path she's clearly already on and calls down the weight of the state on your heads. Slowly if you win this round, only to see your grandchildren grow up fully-Americanized.

<comment><USER40> uh ok, i tell you what. i grew up in germany, i'm highly educated, i speak fluent german without accent(you know like most people that were born in the us, speak english without an accent). in fact i speak 4 languages fluent+ a little of a couple others. everyone that had to deal with me on a personal level tried to hire me at some point.

when i came back from the states i met a buttload of people that were telling me how racist the americans are. so i asked one just a few days back.

"tell me, so everyones telling me how racist they are in the south, and it's kinda true, but how do you guys treat black people over here anyway?"

you know what she answered?

"it's different"

when i entered the train station with my bike yesterday, i almost got beaten up by security guards. you know why? because i got into the train station with a bike, and well just because ... ;) and you know what the two germans did that saw that? they told me this:

"you better run away, they might come down and beat you up"

talk about opportunity. yes, germany gives you the opportunity to study. for free. in some of the best universities of the planet. but you pay the price in a different manner.

you know how much the TSA sucks? you wanna know why you don't hear about patdowns in germany? because they're not even newsworthy.

edit: people make their choices, so what the op does is up to them. i consider it a little foolish. but on other hand think about it. it doesn't seem like she wants to get banned for life. otherwise she could have just posted some stupid thing on twitter like others have done

<comment><USER41> In my experience, most people that were born in the U.S. speak English with an atrocious accent.

<comment><USER42> This is incredibly subjective, and I would argue altogether untrue, although that is also subjective.

</comment></comment></comment></comment><comment><USER43> Just fill out this form on entry [http://www.usvisalawyers.co.uk/images/I-94form.gif](http://www.usvisalawyers.co.uk/images/I-94form.gif) with a lot of "Yes".

</comment><comment><USER44> All her problems boil down to a lack of money. She should just take a student loan to become "financially independent". No idea if she has access to one though

<comment><USER45> No. It's not that simple.

Of course, money can solve a lot of problems, but if she openly defies and (in their eyes) dishonours her family, she can expect retaliation. And they will use the people she loves and cares about the most to get at her.

<comment><USER44> She is fully expecting to dishonor her family in the near future, just not before they have paid for her college.

<comment><USER45> And not before she's got her mom safely out of Pakistan.

</comment></comment></comment></comment><comment><USER46> Now that's a passive aggressive way to solve issues...

<comment><USER47> Active aggression from a Pakistani wife in an arranged marriage may be imprudent.

</comment></comment><comment><USER48> Be careful not to fall down into one of the sex slave pits that bespeckle western civilization.

</comment><comment><USER49> Wow what trash suggestions that woman is getting. "Just report him."

What the fuck SE community? Just ruin the lives of more than one family living in the states just because this girl is too chicken to just say no - <USER2> thousands of miles away no less.

<comment><USER50> She's not chicken. Saying that is disrespectful to the culture she is coming from. She is trying to find the most diplomatic way to extricate herself from an arranged marriage without destroying her connections to her family.

<comment><USER51> Please note that when she says about different culture she doesn't mean even she respects it, in any other way that you might "respect" a bully. It's not about destroying her connection with family, it's about avoiding violence against her, her mother and her sister.

<comment><USER50> Yes that was my meaning, thanks for clarifying. I'm well against arranged marriages but support whatever she needs to do to get through this diplomatically.

</comment></comment></comment></comment><comment><USER52> The reason why this was asked is baffling to me.

If you don't want to go, then _do not go_. I assume the AP was an adult. Adults don't need to resort to tricks like trying to get rejected: adults can just reject the invite themselves.

<comment><USER53> Some people let themselves be force into things. I find it quite sad that they lack the strength to just say no.

Edit: Peer pressure is a bitch especially when it's from your own family but don't let yourself be manipulated by it.

Edit2: Some people have pointed out that it's not easy and in certain cultures be enough to kill a person.

Now it's amazing that this in this day and age that is acceptable but i guess you can get away with anything if you say the magic word: "It's my religion/culture".

However ask yourself this: I have 1 life am i willing to spend it all in a cage with some people i barely know making the rules?

If the answer is yes the the give up already you don't have a choice if the answer is no do whatever it takes.

<comment><USER54> It's not only about personal strength, no one is strong enough to change deep cultural heritage and go alone against 1000 year long culture in which woman has no say. From the comments, it's obvious it's a forced marriage and that the OP couldn't do anything about it. It's not about her husbands family, it's also her family that first "sold" or forced her to marry, and then they want her to live with that guy. Who knows, may be some blood is in danger to be spilled if she plainly refuse to go.

That all being said, I wish her good look to find a way to do it without putting herself in any kind of danger.

<comment><USER53> Why do you assume that? Just because she's from Pakistan?

Regardless my culture isn't that rosy either I just choose to reject it and was lucky that my family didn't really care.

Regardless if you're life is in danger that's the equivalent of slavery and their not your family anymore their your masters.

If you're OK with living that kind of life fine and just give up and go to the US otherwise you need to disappear and break contact with everybody you ever met.

Either fight or give up it can't be both.

<comment><USER55> I'm going to try to explain this; but words really won't do it justice. I cannot convey the strength of "cultural bonds" with text on a computer screen.

As someone from a Nigerian family, we too normally have very strong family bonds. You can't just do whatever you want. The closest thing I could compare it to is kinda of like, _all_ your family is considered immediate-family. In the same way you must balance decisions with your spouse you also must consider everyone's feelings & wants - Even people who are not logically impacted by your decisions and live 1,000+ miles away.

Just throwing away the family network brings you great shame. Yes, pure logic says _" Why should I care what a bunch of elders 3,000 miles away think? They know nothing of what I'm going through."_ ...but somehow... you can't just do that. It's a major part of who you are and breaking those bonds will you empty inside and dishonored by your family(maybe friends too). This is even more the case with women of the culture. It's much easier to create an external reason to defy your family like this lady is trying to do - so it looks like _" Hey, I tried to do what you told me. Something else got in the way! Sorry! But you still love me, right?"_

This will probably sound like nonsense to anyone not part of this type of cultural system.

<comment><USER53> You're probably right i don't understand it. That's a lot of energy and effort put into pleasing people whom can and probably do have ulterior motives just so you can belong to a group.

Is that group really wort all that effort?

Does belonging to that group get you where you want to go?

The answer for me was a resounding no but it could be different for you.

There's very few people worth my respect and consideration but I certainly wouldn't bother to please and entire village.

If you're not pissing people off you're doing something wrong.

<comment><USER55> Well, ya know the saying _" It takes a village to raise a child."_. That same mindset assumes the entire village is the family. So if you grow up in that world, you don't want to disappoint that community.

 _> >If you're not pissing people off you're doing something wrong._

I definitely try to run my life as opposite from this as reasonably possible. "Reasonably" being the word that's very debatable.

</comment></comment></comment></comment></comment></comment></comment><comment><USER53> This can be solved with just the following:

"Honey I love you but i can go through that ordeal i had last time again. I love my life here and i don't want to go we're going to have to find another way."

If you can't be straight with your husband you might as well divorce now it's not going to get easier.

<comment><USER56> As she said on stackexchange, she was forced to marry her husband, who is 15 years older than she is, by her family. So I'd guess it's not as simple as that.

<comment><USER53> My bad must have missed that part. See my other comments then.</comment></comment></comment>


GitKraken v3.0: The Legendary Git GUI Client for Windows, Mac, and Linux - <AUTHOR> https://www.gitkraken.com <comment><USER2> Am I the only one that much prefers command line git to all these fancy tools for git? I'm more than happy with the power that terminal commands give alongside the visuals of branches and commits in bitbucket/github/gitlab etc...

Am I missing something by not using tools like this? I downloaded it to see if I was missing anything, and while it looks fairly pretty, I just cannot see the need for it. I have worked on some fairly large code-bases with many developers branching and committing and the good ol terminal has kept me up- to-date with what's going on. I do use the more graphical visuals in github/bitbucket as a reference to see how messy or clean the branching is and how far branches are straying from master or parent branches... but that's it.

Someone educate me.

<comment><USER3> I agree with you. The only use I've ever had for a GUI is to look at a branching graph, which is significantly easier with a good tool rather than the git command line. But I'd love to have a simple tool to just browse the branch structure rather than a full-blown gui. (I mostly use gitk for this purpose.)</comment></comment>


The typography of 2001: A Space Odyssey - <AUTHOR> https://typesetinthefuture.com/2014/01/31/2001-a-space-odyssey/ <comment><USER2> Anybody know what's going on with the "HAL Project" screensaver? Looks cool but the site is down.</comment>


WordPress.com is down - <AUTHOR> http://www.wordpress.com

<comment><USER2> Not entirely down. WordPress.com is down in some areas. <http://status.automattic.com/9931/135469/WordPress.com>

</comment><comment><USER3> yeah, it failed for mee too a couple of times. I also got an error from Facebook twice. Probably one of their carriers or a CND issue</comment>


Google's updated Java coding guidelines - <AUTHOR> http://google-styleguide.googlecode.com/svn/trunk/javaguide.html <comment><USER2> _Each switch statement includes a default statement group, even if it contains no code._

I've never understood this one: adding `default` just prevents the compiler from telling you when you forgot to handle a particular case...in which case (heh), why use a switch statement at all? What are you buying over a series of if-else statements, other than possible code reuse due to the fall-through behavior?

<comment><USER3> > What are you buying over a series of if-else statement

Code clarity. Depending on how and what you're doing in each case a switch statement can be easier to read than a whole series of if .. else blocks.

And sometimes, given that they are equivalent, it's just a style choice on the part of the programmer.

</comment></comment><comment><USER4> I don't like their indent guidelines, 2 spaces just feels incredibly "cramped" to me with Java. I understand it with an 80 or 100 col line limit (I also tend to 120, but 100's okay), but really, that's the only thing. I personally agree with most of this and we have warnings generated on commit (thanks Sonar!) if people don't follow some of these because they just lead to too many issues down the line that are really easy to accidentally skip over.

I wouldn't imagine it would be too hard to get an IDE auto-formatter to follow all of this (it's more or less what I use with mine, anyways).

<comment><USER5> If they used tabs instead of spaces, it wouldn't be an issue. People could format code on their machine whatever number of columns they prefer. But no... Spaces. Jesus. If you're looking at someone's HTML and it's got this kind of thing strewn about...

...you know with certainty that you're dealing with either 1) an amateur, or 2) someone constrained by top-down corporate numbnuttery.

<comment><USER6> The debate over spaces vs. tabs is as old as time. Associating one side of the argument with "top-down corporate numbnuttery" betrays a lack of familiarity with the issue.

The fact is that whatever shop you work at should have an opinion one way or the other, and you should follow it. Programmers will endlessly bikeshed the issue regardless of which style is chosen.

<comment><USER7> Happily, the Tab-letariat can agree with the Space-eoisie that a separation of the whitespace classes is necessary and good, and any commingling of the two is an affront to God.

<comment><USER8> Hell, God is an amateur? He should know that tabs indent and spaces align. There's nothing to be confused about.

</comment></comment></comment></comment></comment><comment><USER9> Interesting how this document focuses on formatting and naming, whereas their C++ style is full of stuff like "don't use exceptions" or "avoid doing too much work in the constructor." I guess Java guides you into a uniform coding style much more than C++.

<comment><USER10> C++ is a sprawling language that lends itself to many different coding styles. It's also a language with many pitfalls. The guide both encourages a common style so that things look uniform and a style that tries to avoid pitfalls.

That said, the C++ guide has a bunch of peculiar quirks.

</comment></comment><comment><USER11> I guess they were right when they said that the cobbler's kids wear no shoes. It stumps me how one of the biggest, most powerful, and most resourceful software companies in the world would have a bunch of humans write a document on how to format source code, then have all their programmers read that document and memorize it to the point where they can abide by it every second of their work day. _Formatting code is the kind of thing that a computer can do._ Write a program that formats the code the way you want it to be formatted, and invoke it in the appropriate place. Preferably, make it invokable in people's IDEs, so that they can go conformant whenever they wish.

<comment><USER12> It's better than many other companies, where nobody bothers to to write or read that document, let alone use a formatter.

Anyway, this problem doesn't exist in Go (gofmt), C++ (clang-format), or at least 2 of the in-house languages. It still exists in Java, Python, and Javascript because of the lack of robust standalone parsers for those languages, but there are editor plugins for vim, emacs, Eclipse, and I think IntelliJ that automatically enforce the styleguide. (Google does not mandate a single editor the way it mandates languages.)

</comment></comment><comment><USER13> My favorite rule is 4.1.1; always use braces even where optional. I think a small fraction of the economy may have been damaged by the bugs caused by the silliness of leaving out optional braces and then having another developer come along and, well, you know how that goes :)

As someone who once read the Sun Java Style Coding [1] (which at a quick glance, appears to be a super set of the Google style guidelines) standard years ago and found it exciting and very helpful material, I unfortunately did not get such a kick skimming through this. Perhaps it's because after having read Clean Code [2], I feel that there is much missing that can lend itself to better code.

[1] [http://www.oracle.com/technetwork/java/javase/documentation/...](http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html)

[2] [http://www.amazon.com/Clean-Code-Handbook-Software- Craftsman...](http://www.amazon.com/Clean-Code-Handbook-Software- Craftsmanship/dp/0132350882)

<comment><USER14> More on braces, I am squarely in the Allman camp for the reasons described here:

[http://www.experimentgarden.com/2009/07/facts-behind-code- in...](http://www.experimentgarden.com/2009/07/facts-behind-code-indention- style-war.html)

It is amazing the old-style K&R still persists. I think there was one more reason it was preferred in the early days which is not mentioned in the aforesaid link: storage space which was also expensive. The K&R style saves a new-line char which would be a significant saving in large codebases.

<comment><USER8>
        } else {

just looks too good to be wrong. I used Allman style for my first ~10 years of programming, then switched to "compact" style†, and didn't find it a big deal to adjust. Brace concerns melt away just like parens do in Lisp.

† I think K&R does make use of new line braces, for functions.

</comment></comment></comment><comment><USER15> I'm glad they got rid of the stupid m for mFieldName, it's been infecting all the Android developers.

<comment><USER16> This has never been part of Google's internal guidelines. This is part of the Android guidelines which are separate and available here: [http://source.android.com/source/code- style.html](http://source.android.com/source/code-style.html)

</comment></comment><comment><USER17> +1 for no tabs allowed anywhere (must use spaces)

<comment><USER18> I've never understood all of the hate for using tabs instead of spaces while indenting. My thinking has always been that tabs just make it easier to adjust indentation.

As a tab-using heathen, can somebody please explain why spaces would be preferable?

<comment><USER19> If everyone has to use the same level of indentation (as with spaces), then everyone can adhere to the same width limit, and every source file in your codebase will fit in the same sized window. If some programmer sets their tab width to two spaces and then writes code that fits in 80 characters on their screen, it might not fit in some other programmer's screen.

From a philosophical perspective, tabs just aren't necessary. You need spaces in your source code in places besides indentation, but you don't need tabs. It's simpler to only have a single type of whitespace character.

</comment></comment></comment><comment><USER20> Is there a checkstyle config floating around somewhere that I can use to enforce this style?

Edit: Or an eclipse formatter config?

<comment><USER21> I think this might be it: [https://code.google.com/p/google- styleguide/source/browse/tr...](https://code.google.com/p/google- styleguide/source/browse/trunk/eclipse-java-google-style.xml)

<comment><USER20> Thanks!

</comment></comment></comment><comment><USER22> This is Oracle's Java Code Convention: [http://www.oracle.com/technetwork/java/codeconv-138413.html](http://www.oracle.com/technetwork/java/codeconv-138413.html)

</comment><comment><USER23> My single Java coding guideline:

1) Don't</comment>


Show HN: Flow Browser – Structured Tabs on iOS - <AUTHOR> https://apps.apple.com/us/app/flow-experimental-browser/id1526022496 <comment><AUTHOR> Hi HN. I have always liked the idea of browsing with structured tabs. It's sad there are very few implementations of this, and none on iOS before to my knowledge.

Even though making another WKWebView based browser is somewhat questionable, I included many features to make the experience smooth—iCloud sync, iPad multitasking/multiwindow, AdBlock, drag and drop, and more.

This is also my SwiftUI + Combine tryout project. It worked very well for me, despite the many quirks & performance degradation with larger views that required specific optimization.

It is still somewhat experimental at this stage, especially that it does not handle asynchronously loaded pages very well. But it's something nice I made for myself, and I thought to share with everyone, totally free and no ads or tracking whatsoever.

(UI/UX work much nicer on iPad because that's my use case I optimized for)</comment>