Hacker Newsnew | past | comments | ask | show | jobs | submit | rounak's commentslogin

So the footer becomes more accessible in case of lengthy pages. In case of news websites, it's to better surface ads, in this case it's to surface recommendations


Somewhat related. Three ISRO scientists did an AMA a couple of years back. https://www.reddit.com/r/india/comments/1ujcmo/we_are_three_...


I thought H1Bs weren't locked to employers. Can't you transfer the visa?


Yes. The parent's visa can be transferred, for up to a max of 6 years in length. However, the employer needs to be willing to transfer the visa. Lots of employers are willing to transfer the H1B during a good economy but rare to find an employer who would be willing to do so in a bad economy.

Also, if H1B worker wants long term stability and wants to stay in the US beyond the 6 yr period, then the employer needs to apply for Permanent Residency (Green Card). The H1B worker needs to employed for that employer for the entire duration of that GC process. The icing on the cake is that the H1B worker needs to find new employment within a month of being terminated or leave the US. Again, possible in a good economy but near impossible in a bad one.

All in all, this creates the perfect hostage scenario with H1B workers pursuing stability till they get their green card.


Yes you can change employers while on H1B. Its not really a transfer. Its a new petition by the new employer except that its not counted in the annual cap. It has got its quirks. Join the new employer only when the new petition is approved and your employer's lawyer have got the petition in hand.

Never switch before the petition is approved.


Technically yes.

But the poster's employer has probably applied for a green card. Since the poster is Indian, that is a 10+ years process (4 for China and 1 for everyone else). If the poster changes employer (or accepts a promotion), the 10 year clock is reset to 0.

So for all practical purposes, the poster is locked to the employer. He is also locked at the same level and pay. Employers love this since they get an experienced person locked in at the same pay for a decade or more. Obviously this reduces wages for everyone.


> If the poster changes employer (or accepts a promotion), the 10 year clock is reset to 0.

This couldn't be more wrong. there is this little thing known as AC21 clause where you can change employers after some part of your green card has been pending for more than 6 months. This doesn't reset the green card clock at all if you're waiting to be current, but you do have to do the first couple phases again with the new employer (which are really quick)

I have seen many people I know use this to change employer with no problem. If someone under green card is unable to change employer, chances are they just can't find a better job.

Also it is wrong that you can't accept a promotion. For example going from software engineer to senior software engineer is fine. As long as the new position is at least 51% similar to the previous one you are fine, and it is easy to prove on paper with a little bit of magic with your lawyers.

Also wrong that you are locked at the same pay... Seriously I have never heard this yet, where did you get that? I know plenty of people (and myself included) who while waiting for the green card got multiple raises with no problem.


Again you are technically right. But in practice this is of no help.

The AC21 allows you to change employer when you have filed the I-485. That is step 3 of the 4-step green card process. One can't file the I-485 until the "priority date" is current. That is not an issue if you are from any country other than India, China, or Philippines. Else you are looking at a delay of 4 to 11 years. So as I said, not practical for the poster who is from India.

Technically it is also possible to accept "normal career progression" changes in employment, i.e., promotions and raises, as you correctly pointed out. However in practice, what constitutes as "normal" is subjective, completely at the discretion of a visa officer. For a long time, this was very easy and a formality. In the last 1-2 years, the Visa Officers have become anal about this. Cases are being audited for something simple like Data Scientist using Python to Data Scientist using R (actual anecdote in my company).

Also visa officers are going back to approved cases from several years ago and retroactively denying them on some technicality like the above. So even if you know cases that were easily approved in the past, they can be suddenly denied and the employee can retroactively become "undocumented" for the past several years (again actual anecdote).


My understanding is that you can't transfer an H1B. The new employer has to re-apply. You can however go through the process while remaining in the US.

My experience (as an employer) is that it's become much harder over the last year or so to get the re-application through. At the very least they tend to have substantial delays. I'm not aware of the underlying reason.


With Swift going to be open source soon, I think your concerns would be addressed, there wouldn't be a lock in


The idea of a programmer learning on a language and then being "locked in" doesn't really make any sense: I have no love of Apple, and I have nothing but the most cynical thoughts regarding Apple's position with clang, LLVM, and Swift, but I have absolutely no fear that someone who learns to program in Swift could ever be "locked in". I learned to program in languages like Logo and BASIC. I then programmed in TI-BASIC for years and later Visual Basic. I do not consider any of this a waste of time, and none of he knowledge I learned of software development was somehow locked in to any of these languages.


Twitter and Facebook also have similar solutions. Have they been shut down too?


Twitter and Facebook have extensive OS level integrations put together by Apple.


"Too big to fail"


I think at least Facebook's usage would fall under the category of facilitating inter-app communication. They just communicate with almost every app out there.


Wouldn't be surprised if they pay for the privilege.


You're being unnecessarily harsh. If you got frustrated means it wasn't targeted towards you.

Would appreciate if you did an advanced version of this writeup :)


Any pointers/links/tutorials for this? Thanks.


Can anyone explain what is this?


Proportional-integral-derivative (PID) controller is a feedback loop algorithm for control. You give some desired goal (in this case is to reach a position) and it moves to that goal by iteratively attempting to minimise the error (in this case distance).

A real life example is the stabilisation of quadcopters ("drones" eugh I hate that word). Where instead of attempting to reach a location the target is to maintain a specific angle relative to the ground.

As always wikipedia is your friend http://en.wikipedia.org/wiki/PID_controller.


In short, you're pushing the ball around, and the force you use depends on three things:

- how far the ball is from the target (P, proportional)

- how far the ball has been from the target over time (I, integrator), so if you are very far even after a long time you try to push harder

- how quickly is the ball approaching the target (D, derivator), i.e. if you're approaching quickly then you decrease the force, if you're approaching too slow then you increase the force


The article links the Wikipedia page: https://en.wikipedia.org/wiki/PID_controller

If the goal is to teach about PID controllers, then the demo could use a graph showing the parameters through time.


- Brown ball is physically simulated (has inertia)

- A program controls the ball only via two thrusters (x/y), force represented as orange bars

- Program's goal is to deliver the ball to a given point (last click position)

There is a link in the footer: https://en.wikipedia.org/wiki/PID_controller which explains what's a PID controller in this case.


PID is a way to minimize error in a system. Its usually used in industrial settings to control mechanical devices. An example would be you want an electric motor to rotate at a constant N degrees/second. If you just apply a voltage to the motor, you probably won't get an accurate movement because of the variable characteristics of the motor, the load on the motor, and other factors. To fix this, you can add a sensor that can determine how fast the motor is currently moving or how much the motor has moved (a rotary encoder). You then compute the error and use PID control to fix the error.

There are limitations of PID and what it can and cant be used for. There are also other ways of controlling systems (like state feedback).

I might have made some errors in the above statements because I haven't done control theory in a long time, but any control theory course at a university would cover PID control.

In relation to what the post is about, it seems like they've tuned a PID control loop to perform PID error calculations based on where you click and where the circle currently is, then move the circle to that position with a force (/acceleration) determined by the controller.


Is "state feedback" synonymous with P-only control?

I've got an intake valve at work that we're controlling with P-only control, It basically iterates based on incremental voltage being proportional to current error in valve position.

Just trying to brush up on my lingo.


I think its a reference to state space control. Traditionally, PID controllers fell under 'classical control', which is basically the entirety of control theory before the rise cheap computing. They involved devising all sorts of "tricks" to make designing controllers tractable by hand (more or less) - stuff like frequency domain representation, pole-zero plots, root locus method.

State-space representation is a strictly time domain approach, where you break your model and controller into a bunch of 1st degree DEs. This method is really only tractable with computing support.

In general, state-space and frequency domain models can in theory accomplish the same goals. You could for many situations design a PID controller using classical methods, and then take the same situation and use a state space approach, and in the end result in the equivalent controller/behavior.


PID is the hello world of Control Theory which can be used to solve very complex control requirements by iteratively processing feedback. For example these quad-copters juggling use CT even though you may think this is only possible with some kind of machine learning algo.

https://www.youtube.com/watch?v=3CR5y8qZf0Y


>> PID is the hello world of Control Theory...

While that's true, it's surprisingly effective and as a result is very widely used.


Is there something more complicated that's actually used?


>> Is there something more complicated that's actually used?

Yes, absolutely. It's less common but so are the people who can implement them.


This was my indirect way of asking for examples :).


And that was my indirect way of deferring to someone farther down the path than me. But Wikipedia has a detailed overview:

http://en.wikipedia.org/wiki/Control_theory

I was surprised not to see Kalman listed in the people section. His contribution:

http://en.wikipedia.org/wiki/Kalman_filter

Turns out to be important sometimes - like when your sensors don't quite give you what you want. But when things get to that level, I call in a specialist to make sure it's done right - got one on speed dial, he does controls full time all the time.


This is how cruise control in your car works, in almost all cases.


Also how temperature control in most ovens works!


don't think Apple Pay is a "wallet", in that you can't store money, it's just your CC that's being charged.


True, although many Apple Pay users have Visa/MC debit cards linked to a checking account, essentially making it a digital wallet.


So is this an unofficial API?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: