omgitstom
Are you a small time supplier, and want a major retailer to integrate with you over API? good luck. The decision really isn't yours, if you want to get paid, you integrate.
I think the reality is that most developers would rather use an JSON API instead of EDI. EDI is sometimes talked about as just X12 / EDIFACT, but the protocol is baked in as well, which causes more headache (who wants to build an EDI stack?). X12 was built during a time where VANs probably connectivity, and caused per character, so everything was positional based and inferred. Modern APIs are descriptive, and easier to use.
(fd: I work for Orderful, a company that provides an API and then translates it to EDI so you can easily work with any trading partner)
As someone that has gone through this, there is a fine line to walk between doctors operating under their Hippocratic oath, caregivers, and patient wishes. My dad was prescribed meds that weren't helping his quality of life and had really bad side effects mentally and physically through the the mid-stages of dementia.
This is what we are getting ready to get back into. I do not want to have an internet where the ISP can hold me (the consumer) hostage to other companies to increase the ISPs bottom line. It isn't a good experience for the consumer, it isn't a good experience for providers of media and apps.
Twitter gave the police information about the phone number which registered the account that sent the seizure-triggering gif
AT&T gave the police information that is was a Tracfone prepaid account with an associated toll record that was an iphone
Apple gave them access to his cloud account which had all the incriminating details needed including email / picture of him with his drivers license and data about the victim
If they implemented a provider, they will also charge for TOTP authentications.
The easiest/cheapest solution is to roll your own TOTP and build an app. This is useful for web, but may be pointless on mobile (if the mobile device is unlocked, then you have access to the TOTP app or SMS).
Business people probably looked at the cost per user and couldn't offer it at a lower rate.
It doesn't really matter where you start, as long as you can relate to the product and its customers. I've seen great PM from every beginning. My beginning was a normal comp sci background -> dev -> customer success manager (any support role is a great segway into product management role) -> PM. Having managed many PMs, it boils down to this:
Can you be an advocate for your customer for your product, regardless of intercompany demands?
Can you communicate your vision for what needs to be built effectively across the whole company?
Those are the two main skills that I try to distil for any PM that I hire. There is a 3rd which I call the auxiliary skill (these can be taught easily, hence auxiliary).
How do you validate your assumptions, remove cognitive biases to come to the best decision about the priority on what should be built when?
And a fourth, which comes down to background and personality:
Can you be a swiss army knife and help wherever the team needs you?
The product I currently manage is a developer tool, so taking a look at an example based on the 4 points:
1. Can you relate to developer pain points, market problems with identity, create great developer experience and understand where there are holes in the current product?
2. How can you use the tools at your disposal to communicate what we need to build to the engineering team, marketing, and executives. Technical and non-technical folks alike, even for a technical product that is sold to devs.
3. How can you manage feedback / signals from sales, developer evangelism, customer asks, and visionaries to create a roadmap
4. Demonstrate how you have needed to step out of your comfort zone to get the job done.
When interviewing, having a developer background is a must (but it is only a must because my product is currently catering to the developer persona), but replace a developer product with a dental product that is sold to dentists. That hiring manager is going to want someone that more than likely understands dentists and their pain points that the software is currently solving for. They could come from, office manager, dentist moving to software (it happens), someone from the insurance industry... you see the point.
Hope this helps, I'm always happy to help and advise. Snag my twitter handle from the profile and shoot me a DM.
This is a must watch and encapsulates good design and theory: https://www.youtube.com/watch?v=hdSrT4yjS1g
Good API design, if you are trying to learn from zero, comes from learning from good examples.
These are some of my favorites APIs by design
+ Stripe
+ Twilio
+ Slack
+ Stormpath (fd: I work here)
There is a lot of work that goes around the API design to make it a great API (examples, documentation, live samples, etc)
My guess here is that bitcoin is considered property and not currency, and there are laws around this.
Edit: Looks like they are treating bitcoin as property -https://www.usmarshals.gov/foia/directives/asset_forfeiture....
It seems pretty obvious that sleep had an evolutionary advantage to conserve energy when the species couldn't be productive. For example, human sleep during the night because we can't forage / hunt / find a mate during the night because our vision requires light.
http://www.forbes.com/sites/anthonynitti/2015/10/05/tax-geek...
I honestly don't know the answer to your question, though.
The exercise period is usually 90 days, if you leave a company.
What happens a lot is there is no liquidation event for years meaning that an employee with shares needs to make a decision fast to convert or lose their shares (which they earned) and that cost $$$. I've seen time and time again, where people get locked in because they need to drop 4-6 figures to exercise their shares.
> If the employee loses the stock when he's fired early, then the company has a huge incentive in firing him a day before he vests, and thus he should regard the vesting compensation as nonexistent.
I've seen this happen a few times in SV where employees are fired 1-2 weeks before their vesting period. Sad when it happens. Not saying that all times it is because of the cliff, but people talk and are aware of companies that have done this.
We have an implementation of JWTs @ Stormpath for Token Authentication. We help a lot of customers with token authentication / user management and Stormpath hold a whitelist of all unexpired tokens.
In the Stormpath SDKs, there is the ability to locally validate the token for speed or validate against our API to make sure the token hasn't been revoked.
A common strategy for our customers is to always validate an access token locally, but force refresh against the Stormpath API. This is a good way to not incur state in your application (Stormpath will keep the state for you).
The Stormpath Integrations (like Express / Spring / Laravel / etc) use cookies to store the tokens because we have been advocating for cookies as the JWT storage mechanism for a while:
https://stormpath.com/blog/where-to-store-your-jwts-cookies-...
In regards to your advice about id_tokens and access_tokens. Usually, what I've seen in most attacks is that if a malicious user can get one, they can get both.
A lot of your points though are valid outside of using JWTs. Open redirects vulnerabilities should be plugged and sanitizing user input should be looked at regardless of what you are using in a web application.
In regards to the replay attacks, if you are using JWTs in a 3 party setup, and they are validating JWTs locally (not sending them back to a validation endpoint), the jti claim won't be enough.
Thanks again for clearing that up! Considering this blog post may still have a use, I'll update it soon.
Every company wants a PM that is a jack-of-all-trades. This could be any degree of technicality, UX skills, marketing skills, developer skills, design skills, customer success skills, sales skills, and PM skills (prioritization, specs / user stories / strategy / go-to-market / scoping / shipping etc). If you aren't a jack-of-all-trades, pick up some hobbies / books / go to meetups to make yourself as well-rounded as possible.
Every company wants someone that is deep in one of the areas above.
Commonalities between companies are they want someone that is a foot deep across every skill set, and a mile deep on one skill set.
Figuring out where you fall on the scale of things and make sure you find a company that is looking for your exact strengths is the most important thing to pass a PM interview. Screen the company as they would screen you. Once there is a match, then Sam's advice kicks in if they are looking for a Technical Product Manager.
For aspiring PMs, I highly recommend taking a job in customer success as a gateway into product management. You learn a lot about working with customers, prioritization, and should be aligned with seasoned PM's at the company for advisement and mentorship possibilities.
But where I have more issues is that OWASP clearly advises not to use web storage for identities:
+ A single Cross Site Scripting can be used to steal all the data in these objects, so again it's recommended not to store sensitive information in local storage. + A single Cross Site Scripting can be used to load malicious data into these objects too, so don't consider objects in these to be trusted. + Pay extra attention to “localStorage.getItem” and “setItem” calls implemented in HTML5 page. It helps in detecting when developers build solutions that put sensitive information in local storage, which is a bad practice. + Do not store session identifiers in local storage as the data is always accessible by JavaScript. Cookies can mitigate this risk using the httpOnly flag.
To bring this back around, the identity does not require consensus, the naming does, and the claims about the identity does.
Your section about authentication resounds with me loud and clear, I couldn't hack it out in 6 hours. This will be a pain point for anyone using API Gateway for anything other than a toy API.