DEV Community

loading...
Raunak Ramakrishnan profile picture

Raunak Ramakrishnan

Passionate about databases, distributed systems and functional programming.

Location Mumbai, India Joined Joined on  github website twitter website

All 185 comments

Daily Challenge #282 - Car License Plate Calculator

letters = 'abcdefghijklmnopqrstuvwxyz' def find_the_number_p...

Directions and roadmaps

Hi Paul, I signed up for the beta and tried out the tutorial...

What are your top 3 focus songs?

On a similar note, I love listening to classical music and ja...

Evolving Dark's tracing system

Have you explored saving the request data in Apache Kafka? As...

What is the most potentially-revolutionary software currently being developed?

Hasura. Postgres + easily scalable GraphQL API with support f...

5 Tips for Writing Articles People Will Want to Read

Great article! There should be a point 0 - know your intended...

How do you record GIFs?

TIL dev.to has a subscribe for comments...

What are the big differences between working for a "tech company" and being a dev for a "non-tech company"

Biggest difference is tech in "non-tech" companies are seen a...

What languages and tools do you use that spark joy?

I'll be that person :P ... I love regexes. Tools like grep, s...

A commandline tool that generate High Level microservice & serverless Architecture diagrams

This is really nice! What are the advantages of draft vs othe...

Daily Challenge #253 - Sort Sentences Pseudo-alphabetically

Python import re # Pat to check if first letter is capital...

Python vs Java

Yes, it is unfortunate that JPython never took off as much as...

Python vs Java

In web development, I feel that familiarity with a framework ...

Python vs Java

Thanks!

Python vs Java

I use both languages. Let's compare the two languages: ...

OOP vs Functional Programming

FP and OOP mean a lot of different things to different people...

How we made our SQL database QuestDB even faster and more accurate

Hi Nicolas, I have been following QuestDB for sometime now. ...

How to build unique indexes in PostgreSQL on large text

Hi @rhymes , Great post. TIL about the limit on size of what ...

Daily Challenge #249 - Incremental Changes

In JS: let alg = (( num, iter, step) => num + iter*step)...

Dev.to search bar sucks

An Advanced Search Page will definitely be useful. Current qu...

AWS vs Azure vs Google Cloud

I have used GCP and AWS so far... I favor AWS slightly over G...

How to Apologize

Or do you mean "from users"? I meant users not the develop...

How to Apologize

I think it's reasonable to be fair here. They made a mistake...

Webhook to auto-deploy on git push to Github

Yes. I use them for running tests, static analysis and buildi...

How to Apologize

I think the apology is fine (at least they apologized rather ...

Going From “Hello World” to Multithreading: How Much Time Does It Take to Learn Java?

Great post. A minor nit - your link to Java Performance - the...

Google Cloud BigQuery vs. AWS Redshift

How does AWS Athena compare to BigQuery? AFAIK, it is AWS' ...

20 Intriguing, Unusual, and Goofy Programming Languages

Have you tried emojicode? Here's a hello world: 🏁 🍇 😀 ...

A cron job that could save you from a ransomware attack

Great article. Wanted to add that backing up is just one part...

What's new and interesting in Java?

Great thread. A few more interesting things which are in th...

Advanced Argument Handling in Bash

Thank you so much for writing this comprehensive tutorial! ...

Move PostgreSQL AWS RDS to Google Cloud SQL

I did a similar move from AWS RDS to Google Cloud SQL (for ...

Time to build a markdown parser and processor (MDL Log #1)

Regarding converting markdown to an e-book, have you tried ...

What was your win this week?

This week, I... debugged a distributed system where the exa...

Let's Connect!

Followed you on Twitter! I think we should have something l...

Do you recognize your code 6 months later?

I have some files from different stages of my career. The e...

Why Are Some Developers so Allergic to IDEs?

I think it depends heavily on the language. I use Eclipse w...

10 free-but-professional tools for your dev projects

We can self-host Sentry using Docker.

Everything is a File

Great article. Kernighan's example reminds me of Doug McIlr...

A definition of the Linux desktop

Great article. As a Linux desktop user, I agree that the ph...

Testing Different Fibonacci Generator Techniques in Python

There is a lot to love about comprehensions. The nice thing...

Testing Different Fibonacci Generator Techniques in Python

The generator code takes more memory because we are creatin...

Recursion Algorithm Practice: Fibonacci Sequence Generator

All the best for the interview! Another interesting approa...

Explain Awk and Its Uses Like I'm Five

I had written an introduction to awk on dev.to : ...

Describe Your Job With a GIF!

Waiting for the Holy hand grenade one :)

Will Java Trend Towards Obscurity?

To put a different spin on this, some traditional Java "pat...

What software development skills only come with experience?

Debugging - You have to experience bugs/glitches/failures b...

What are your programming goals for 2019?

I think the hard part in Rust is dealing with the borrow ch...

Python urldecode on command line

We can also do it without xargs by using sys.stdin to read ...

What are your programming goals for 2019?

My goal is to learn Haskell and Rust. Also, to write more a...

Developers kit 😁♥️

Laptop/computer will be a better alternative to Macbook as ...

On GUI-shaming and a mountain of hot takes

At the end of the day, GUIs and CLIs are just that - interf...

Back to school

Hi Ben, Congratulations and good luck! I did my OMSCS (Onl...

Daily Coding Problem #1

Yes. I was not sure of that constraint. In that case, set i...

Daily Coding Problem #1

This page lists the complexities of the major data structur...

What are some misconceptions about web development?

Common ones I have encountered: Frontend is easy Everyone...

Daily Coding Problem #1

Incorrect. s is a set. The in (contains) for s is O(1). It ...

Daily Coding Problem #1

One pass in Python using built-in list and set types def ...

How to make Python code concurrent with 3 lines

All in due time :)

How to make Python code concurrent with 3 lines

uvloop is excellent! I have used it for Python 3 based web-...

How to make Python code concurrent with 3 lines

Great article. I was not aware of concurrent.futures in sta...

Should I do that test assignment?

It varies a lot depending on the company. Many companies gi...

How much popularity does a software project need?

Software use and development is always a battle between "th...

Compute Smart, Not Hard

Yes. Python integers have unlimited precision out of the bo...

What’s a concept you understand now, but took you forever to grasp?

Backtracking Dynamic programming Learning to use some high...

Compute Smart, Not Hard

You make a very good point about brute-forcing vs solving m...

Why is your preferred programming language your go-to?

I have a few preferences depending on the task at hand: ...

Open todo list standard?

The problem is that different people have wildly different ...

I'm an email developer and totally not a spammer. Ask me anything.

Thanks for doing the AMA! How feasible is it to self-host ...

What dev topic do you think you should understand, but don't?

As a predominantly backend developer, I do not get a lot of...

Thoughts on interpreted vs compiled languages?

Getting into this a bit late but most statically typed lang...

Types as propositions, programs as proofs

In Java, there are checked exceptions and unchecked excepti...

Why I can't recommend Clean Architecture by Robert C Martin

Thanks a lot for this review. I am putting Patterns of Ente...

Types as propositions, programs as proofs

Great article. I have a doubt. You mentioned that the type ...

What am I missing out if I'm not using a VM/Container for my development setup?

VMs and Containers are useful if: it is difficult to recrea...

Papers We Love - Reflecting on Trusting Trust

Thanks once again for starting this! This article almost di...

Bash Command Completion - Finding all the cats in your $PATH!

I also learned today that man -k is equivalent to apropos

Guide to Hiring Developers

Hi Peter, Some of the negative indicators are debatable. F...

Py in 5: Decorators

Feel free to share it. The more people who can read it, the...

Py in 5: Decorators

Great article. Decorators are very useful for writing reusa...

Deciding a database architecture for a Social Networking use-case?

Just came across this post right now. What did you end up u...

Recommend a Dev.To-er!

Thanks, Ben! This made my day :)

Git: How to keep your fork updated with remote repository

Thanks! Was not aware of this before. This will reduce the ...

Is there a way to persistently display background jobs?

You can add \j to your bash prompt. It will show the number...

The Unix way... or why you actually want to use Vim

I always google before using find. But it is a powerful too...

Java is still free!

If you are using OpenJDK, you need not worry about paying O...

Java is still free!

Great article. Unfortunately, there has been a lot of FUD r...

Converting a csv writer from Python 2 to Python 3

Did you try 2to3 on the Python 2 file? I'm interested in kn...

Papers We Love!

great initiative! I like reading papers on databases, distr...

Does programming require empathy?

Empathy is a skill/value we can only learn by interacting w...

Does programming require empathy?

The answer is no if your software has no users and you are de...

You can now delete issues on GitHub (different from closing them)

What this feature aims to solve: Improperly reported secu...

Automating Simple Things with Python is Awesome

Yes. Another way I found was using awk instead of source as...

Automating Simple Things with Python is Awesome

Here's one way of doing this using the standard Linux utils...

What are you not interested in learning?

For me, the list is as follows: .NET stuff. I have heard...

Daily Coding Puzzles - Oct 29th - Nov 2nd

I think you should add the problems to the post itself. Oth...

What types of features typically lead to lots of tech debt?

One-off feature requests which are of the form "We need this ...

dev.to Show us your octocat alter ego

Here's mine:

Why you should do Competitive Programming, even if a little

Hi Avi, I agree with many of your points. Here are my though...

How do you do random?

APL: ⍝ `? n` generates random number between 1 and n, bo...

Surviving the Linux OOM Killer

Agreed! There is no substitute for good monitoring. It catc...

Announcement from the DEV Community Founders ❤️

Congratulations! The dev.to community has been the most frien...

Reactive Programming in JavaScript with RxJS.

Awesome post. What tool do you use for the diagrams?

Java 11's Future

Oracle have not been as bad with Java as they have with the...

Java 11's Future

OpenJDK has been given ample attention. OpenJDK has been th...

Containers Under Attack

Many developers I know of prefer using ubuntu for a base im...

We Don't Need No Stinking map() or filter()

Nice article. I was recently trying out some coding problem...

If you don't hire juniors, you don't deserve seniors

Great article. Many companies expect people to be productiv...

Concerns that go away in a serverless world

Thanks a lot for the links. They are very helpful.

Concerns that go away in a serverless world

Do you have any recommended resources for porting standard ...

Concerns that go away in a serverless world

Hi Paul, Great article. In my previous workplace, I set up ...

Is using Docker for a small OSS project a wise decision?

Docker on Windows still has some issues. We can not use Vir...

Java Map keys should always be Comparable

Great article. Loved the linked talk too!

Who is Who?

Alan Turing, von Neumann, Donald Knuth are legends. Anyone ...

How do you rate your (a programming language) skill on a scale of 1 to 10?

The Answer to Life, Universe and Everything :)

Welcome Thread - v16

Hi John, Welcome to dev.to :) . Will love to hear your thou...

The Right Idea Becomes the Wrong Idea Over Time

Good ideas are always relevant e.g backwards compatibility,...

What should every developer know?

How to google stuff :)

Engineering whiteboard interviews: yay or nay?

Whiteboard interviews look at a small sliver of skills you'...

Which newsletters do you read?

Great links! I sometimes visit Brain Pickings to see how fa...

Which newsletters do you read?

I read some articles from Nautilus, Aeon and Atlas Obscura....

Which newsletters do you read?

Wait till everyone is on the SPA bandwagon :P

I'm a Tester, Ask Me Anything!

What is your experience with culture of testing in start-up...

Which newsletters do you read?

Yes, subscribing to too many newsletters is counter-product...

Which newsletters do you read?

The objective of a newsletter is not to cover every article...

Which newsletters do you read?

One advantage of getting newsletters is that your mail is g...

Which newsletters do you read?

I used Google Reader before. I use newsletters as a curatio...

Programming is ...

Programming is ... a way to convert feature requests to bug...

8 steps to increase your Developer Resume response rate by 90%

It can be useful for developers trying to get a foothold in...

Four Key Elements of a Healthy Framework Ecosystem

Use by a big corporate definitely helps as it has a snowbal...

Four Key Elements of a Healthy Framework Ecosystem

Thanks for sharing this :)

Notes from Hyper-Dimensional Spelunking

Yes! They should be used more. 3blue1brown had an awesome v...

Notes from Hyper-Dimensional Spelunking

Very well written and informative. I first came across spac...

The Rails Ecosystem is Healthier than Ever

Here are a few points regarding what makes an ecosystem hea...

How many computers do you use?

I have 2 computers: An Acer laptop dual booting Windows 1...

What is your ideal coding hour?

Generally 2 pm to 6 pm. I am super-productive if I take a p...

Tracking Service with Go and Redis

This is awesome! I would recommend having a look at tile38, a...

My #100daysOfCode Challenge

Best of luck, Ricky! Does this challenge mean 100 consecuti...

Guido van Rossum steps down as Python's BDFL, thoughts?

In India, we have a saying that "Even the gods cannot pleas...

I'm Addy Osmani, Ask Me Anything!

How does Chrome team check for security of the sandboxing, ...

Daily Coding Puzzles

Thanks for this, Ali. Another source of good programming pu...

Can Measuring “Progress” Make Software Projects Fail?

There's this famous law which states that "When a measure b...

Project Euler #1 - Multiples of 3 and 5

Here's one in Haskell using list comprehension: sum [x |...

Awk - A useful little language

It may replace your cluster :P See this article on how a ba...

Vim Filters

This is really useful! Was not aware vim had these superpow...

Changelog: Github Repo & Glitch Liquid Tags

Is there a way to embed a view of two code snippets side-by...

Awk - A useful little language

Hi Ishani, awk is a very old language (1977), predating sc...

Which programming language/environment is more “powerful” than people realize?

Not a software tool, but a notebook. Writing what you are g...

Awk - A useful little language

Some Awk one-liners replace my use of other Unix tools like...

Handwritten Digit Recognition Using Convolutional Neural Networks

Thanks Eduardo. The model import from keras looks very usef...

Handwritten Digit Recognition Using Convolutional Neural Networks

Not sure of networks learning the pre-processing as most of...

Handwritten Digit Recognition Using Convolutional Neural Networks

Very well written! Loved the explanations for the pooling a...

Write a simple but impactful script

Using shuf utility for shuffling: for i in {0..9999}; do ...

The slow and painful death of a developer

My intro to programming professor at university told this w...

Good Chat / Online channels for developers

Nice! What stack are you using for building dev.to chat? I...

Explain ANTLR like I'm five

tl;dr : ANTLR is a tool for generating parsers for any form...

Simplest way to deploy a Flask app

You will need a WSGI server. Have a look at this tutorial. ...

The Twelve-Factor App

12 factor is an interesting methodology with many good prac...

EFAIL mitigations

On Twitter, some of the infosec people were mentioning that...

What are the unwritten rules of development?

The fastest, safest and cleanest code is that which does no...

What is JAM Stack

Hi Leonardo, Thanks for the post. I have a few queries: ...

What Is Your Main Language?

Java / Kotlin for big backend services (using Spring boot)...

Update Efficient Data Structures

I read it while looking up Judy Arrays. Their documentation...

Update Efficient Data Structures

Thanks for this well written and comprehensive post. How do...

Cargo refused to build my project - A Rust debugging story!

Cargo itself was working fine. The issue was a combination ...

AlphaGo: Observations about Machine Intelligence

Thanks for this very well written article! I am checking ou...

Simple note taking from the command line

A minimal tool I use for command line notes is jrnl. Instal...

loading...