HN user

kayman

463 karma
Posts7
Comments198
View on HN

I feel like development has come full circle. Initially, it was all server side.

Then we had to use javascript to do some frontend stuff.

The javascript became frameworks which templated some of the patterns to make the frontend dev easier (led by React and Angular)

Frameworks like Blazor and Phoenix/Elixir are bringing the frontend dev back to serverside.

I used to do limit orders - try to save some money by buying a stock when it's at lowest during the day.

Then I read a book by Fischer called "Common Stocks, Uncommon Profits"which suggested that when you have a long investment horizon, say 5-10 years, and you have done the research to have the confidence, a limit order gives you no real benefit.

Say a stock is $100 today. In 5-7 years you expect it to be $500, the benefits of doing a limit order are less significant.

The reason your username and password are on different pages is to handle federated identities. Take a typical saas product. Initially you build your own login username and password. As you grow your users ask to login using gmail, LinkedIn or Microsoft so they don’t have to remember multiple usernames and passwords. If you enable third party login it means you have to redirect the site to the third party login page to authenticate.

To accomodate that you design your page so the user first enters username. In your system you check based on email who the identity provider is and redirect to that login journey.

For e.g. if Microsoft you redirect to Microsoft login page to authenticate.

If successful the third party login provider will send you back to your app with a JWT. In your app you check if the JWT is valid - if so allow access.

On first entering email on login, If your login provider is your own app, you redirect to your own login password page.

As someone who has been on both sides of the coin. My take is: Don't make your site for anyone and everyone. Keep a target audience in mind. Most of the time, the person that hires you is usually the target audience.

Don't try to be too cute. For example, I have seen sites/resumes where the whole thing looks like HTML tags. My first impression is "cute" but it makes it hard to read as you try to gather real information.

Most of the time when someone is looking at your site, they are asking themselves: - Who is is this person?

- What do they do?

- How much will it cost me. (Does it look expensive, cheap or reasonable what tier do they fall into. ex: Dominos pizza or Gourmet Pizza)

- Have they done any projects that are similar to what I'm looking to get done.

- Are they competent

- Do they look like someone I enjoy working with. (energy, attitude, views...)

+1 for keeweb. It's central to my password management strategy now. Can't recommend it enough.

I've tried the offline versions, but I find myself often on the go - without my laptop.

The tools for mobile don't seem to support updates - read only. Keeweb does both.

On a positive note, the online services provided by a government agency are pretty good.

When I received a bill from the tax office I was able to go online and create a payment plan without human intervention.

There is also a portal that links multiple government services (Australian Tax Office, Medicare...) to enable access to multiple services.

A few weeks later, I also got a call from the tax office surveying about my experience.

Overall, my experience was great. (except for forking out money part :)

Block driverless trucks? I can see this only working short term. Long term, the benefits of driverless trucks are too great to ignore.

I'm curious to see how long and what tactics are used to delay this inevitable technology.

Similar to how Tesla faces all sorts of issues from the traditional car dealerships.

I'm also interested to see the politicians jumping on the bandwagon talking about saving jobs as an excuse to promote this agenda.

If only you'll be editing the site, as a dev, I always like to roll my own. Simple HTML/JS/CSS. Feel like I have more control, less learning and I enjoy it. But that's the dev bias.

If you want other non technical people to edit or make changes, choose a CMS.

Your goal is to get your message out there asap so you can solve problems.

End of day, the customer doesn't care, only you do. You can always change it later.

In software development, when I can't figure something out, it's natural to feel "incompetent". After all, someone is paying you for your expertise and you can't figure it out. You dev instinct is to hide in the corner and avoid all contact until you figure it out.

But you have to put your business hat on. Communicate with the client from a business level - you've hit a snag and it's taking slightly longer than expected. The client will then ask: "How long will it take?" Because you can't figure it out, you have no idea. But the client wants a timeframe answer. I give the client usually a range of time like "give a day or two to figure it out" or "I'll let you know later on today".

Do not tell the client to go hire someone else if you value your relationship with the client. Find that "someone else" and pay them to figure it out if you can. Do not dump the "you go find another solution" on the client.

Pick one, learn it. There are libraries to do what you want to do in both languages. If you get good at one, you'll figure out a way to shoehorn it into the problem you're trying to solve.