HN user

iamd3vil

2,227 karma

Go & Rust developer.

Works at Zerodha, Bengaluru.

https://sarat.dev

Posts81
Comments61
View on HN
www.phoronix.com 2y ago

Google Rewriting Android's Binder in Rust with Promising Results

iamd3vil
3pts0
security.googleblog.com 2y ago

Bare-metal Rust in Android

iamd3vil
272pts117
github.com 5y ago

Export Telegram group chats into static websites

iamd3vil
8pts0
buttondown.email 5y ago

The Most Backdoor-Looking Bug I’ve Ever Seen

iamd3vil
268pts208
cs.rochester.edu 5y ago

Refactoring the FreeBSD Kernel with Checked C [pdf]

iamd3vil
2pts0
zerodha.tech 6y ago

Hello, World – Zerodha, India's largest stock broker

iamd3vil
244pts77
zerodha.tech 6y ago

Hello, World – Zerodha, India's largest stock broker

iamd3vil
12pts0
lore.kernel.org 6y ago

WireGuard 1.0

iamd3vil
821pts2
github.com 6y ago

WireGuard overlay mesh network manager

iamd3vil
1pts0
www.redhat.com 6y ago

Red Hat Introduces Open Source Project Quay Container Registry

iamd3vil
223pts105
mrkaran.dev 6y ago

A Quick Primer on Dig

iamd3vil
8pts0
www.wired.com 6y ago

Apple Reveals $250 Noise-Canceling AirPods Pro

iamd3vil
6pts0
bugs.chromium.org 6y ago

Signal: Incoming call can be connected without user interaction

iamd3vil
231pts30
github.com 7y ago

A Dead Simple VPN

iamd3vil
4pts2
mrkaran.dev 7y ago

My Personal Networking Setup

iamd3vil
2pts0
ferd.ca 7y ago

Ten Years of Erlang

iamd3vil
567pts149
devblogs.microsoft.com 7y ago

Linux Development Experience in Windows with WSL and Visual Studio Code Remote

iamd3vil
1pts4
m.economictimes.com 7y ago

Real threat: Truecaller data available for sale

iamd3vil
1pts0
blog.erlang.org 7y ago

Erlang/OTP 22 Highlights

iamd3vil
3pts0
blog.cloudflare.com 7y ago

How a Nigerian ISP Accidentally Knocked Google Offline

iamd3vil
2pts0
blog.timescale.com 7y ago

First release candidate for TimescaleDB 1.0

iamd3vil
107pts41
blog.erlang.org 7y ago

Optimization Traps and Pitfalls – A Blog from the Erlang/OTP Team

iamd3vil
2pts0
github.com 8y ago

ActorDB – Distributed SQL database

iamd3vil
284pts85
ubere.ng 8y ago

The Road to UChat: Building Uber’s Internal Chat Solution

iamd3vil
2pts0
kialo.com 8y ago

Kialo – Empowering reason

iamd3vil
1pts0
boats.gitlab.io 8y ago

Async and Await in Rust: a full proposal

iamd3vil
6pts0
ferd.ca 8y ago

The Hitchhiker's Guide to the Unexpected

iamd3vil
1pts0
www.privateinternetaccess.com 8y ago

Private Internet Access Goes Open Source

iamd3vil
267pts105
www.samsung.com 8y ago

Samsung Galaxy S9 and S9+

iamd3vil
183pts303
medium.com 8y ago

Go Experience Report: Generics in Kubernetes

iamd3vil
3pts0

OP has literally written in the gist about exploring a way to map entire port range and avoiding doing this, so the non hacky way of doing this is setting up something like a wireguard tunnel. That's the reason I suggested doing this instead of a tunnel which has other disadvantages like doing TCP on TCP.

WARP is here 7 years ago

I think it does. If you want cheaper VPNs, you should checkout Private Internet Access(PIA). If you subscribe for annual plans, you will get it cheaper there. PIA doesn't support Wireguard protocol though.

WARP is here 7 years ago

Don't ever user free VPNs and especially something like Hotspot Shield. You can check https://thatoneprivacysite.net/ for a comparison of VPN services.

I use Mullvad VPN which supports both OpenVPN and Wireguard(which is the reason I use Mullvad) and costs 5 euros per month. You can use something like Bitcoin to pay if you want anonymity.

As the data shows 99.3% of the cash returned. This doesn't include Grameen banks. So the number maybe more. Percentage of black money has increased. The amount of cash transactions with respect to digital transactions has also increased. Demonetization is a total disaster and I can't forgive Modi for making the country suffer like this and taking 100 lives for nothing.

We package it into a docker image using distillery and then deploy to Kubernetes using Peerage with KubeDNS for auto clustering. It was tricky to figure out everything at the start but after figuring out once, it's pretty easy and works really well. Only issue we had at the start is figuring out sys.config but we use Environment Variables for almost everything and set `REPLACE_OS_VARS=true` while building the Docker image, which solved most of our issues.

Yeah true. Also by open sourcing the chrome extension maybe someone can port this to Firefox. I think it should be relatively easy after the recent move by Firefox to webextensions.

I think websockets is a much better use case for this if you don't want the reconnection overhead. Also since websockets are bidirectional, you can keep the connection open and send all requests through the connection as well as receive responses from the connection. Also you can send binary on websockets if you want to save bandwidth as well. We do this at work and it works pretty nicely.

We mostly use docker with docker swarm. Currently exploring moving to Rancher. Also we use Gitlab CI for CI/CD. Our workflow looks like this: a release is tagged, CI tests and builds a docker image which is pushed to our private registry and then we use ansible to deploy the new release on our servers. We mostly use onprem for our production and can't use any cloud with the regulations and limitations we have.

Go maybe faster than Erlang in raw throughput but Erlang can compete with Go in Latency (mainly predictable latency). As you said it all depends on the scenario. The article is mainly in the scenario of betting infrastructure where I think erlang is better due to OTP (saying this as a person who works on building trading systems and daily user of both).

I think if you are coming from Rails and Ruby to Phoenix, you should learn elixir first. Or else, like a lot of people, you may think that it's similar to Rails. Phoenix may look similar to rails, but there is a huge difference on how they work. Also atleast from my point of view, you should know about OTP too. Your application is an elixir app, with phoenix which provides just the web interface to your business logic.

Actually in India, I am really grateful for Uber. Previously talking to an auto rikshaw or taxi is pretty painful. They are rude, not reliable, charge a lot if you don't know the city or area. Also atleast from my talking to lot of Uber/Ola drivers is that they are earning a lot compared to their previous taxi service. So to answer your question, both drivers and public.

Elixir and Erlang have similar symantics, compiles to same byte code. You can use any Erlang library in Elixir without any overhead, all the tools (debugging, profiling) which works with Erlang works with Elixir.I don't see why you can use Erlang and not Elixir.

Why do they have to know the tech before? A good engineer can always learn new tech and I think as a developer who belongs to a company who uses Elixir in production, most of my colleagues who use Elixir didn't know about it before getting hired.

I know lot of people here say that Chrome is much faster than Firefox. I agree that sometimes chrome feels more responsive, but I want to tell my perspective from someone who owns a very old and slow laptop. Whenever I just start Chrome, it seems superfast until 5 minutes. Just open 5 tabs and some other programs like Terminal and Clementine, my whole system just hangs. So I can't even use Chrome because of the memory it consumes. Firefox actually seems very responsive for me even if I open 10-15 tabs, I can open other programs when it's open. Also I feel that in last two years I have rarely seen the UI hanging in Firefox when a page loads (even with my shitty laptop).

So I am really thankful for people who work on Firefox and letting me use it on a shitty laptop. Also it's one of the reasons I am learning Rust now so that I can contribute to it.

Since I am an Indian I know of a service which is hated by most people - IRCTC because of it's scaling issues. It's a lot better now but I remember those horrible days you have to do a tatkal ticket.

I also know of some government services (my state has paperless administration so everything is digital) which are used in day to day basis (but only hundreds of users) by government employees goes down for almost 2 hours per day everyday which stops work for everyone (both the employees and the people came for that service). These services are developed by companies like TCS and Infosys. Only if they thought of scaling before.

Elixir's package ecosystem is quite good. The advantage Elixir has is that using an Erlang package in your Elixir codebase is very very easy and the same as using any other elixir package.

We are using Elixir for more than a year now at work and in almost all cases where we couldn't find a Elixir lib we found an Erlang one.