Hi, I’m Hrishikesh Kokate. I’m working at Netlify. I’m from Thane, India. I’ve been fascinated by computers and been a tech-enthusiast for a huge part of my life. From learning new applications to developing one myself, exploring graphics creation, fiddling with the deep ends of an operating system, I have always tried to keep myself updated, theoretically and practically on my knowledge about computers and phones.
I believe in constantly learning new concepts, applications, etc. and revising the old ones. Change is inevitable and you need to move along with the trend to keep yourself in the competition. Thus, I always keep experimenting and researching on new possibilities to learn and improve. Apart from computers, I’m also interested in physics and astronomy. I keep reading articles about new concepts and reports about the two. However, when I tried to learn these subjects formally, that didn’t end well.
Currently, I’m working as a Senior Support Engineer at Netlify.
Along with that, I’m also developing my application skillset. I believe, just knowing how to use more number of applications isn’t a good thing, but, one should be able to use the correct one for a particular task. Just changing applications doesn’t help unless one’s not familiar with the concepts of the application or the task in general. Thus, I always give equal importance to theory or knowing why something behaves the way it does.
2021-2023: Expected to graduate as a Master of Business Administration from Indian Institute of Aviation and Hospitality Management, Kalyan (affiliated with Singhania University, Jhunjhunu).
2018-2021: Graduated as a Bachelor of Mass Media from Satish Pradhan Dnyansadhna College, Thane (affiliated with University of Mumbai). Studied a total of 37 subjects + completed Internal Programme in Visual Arts and Design course from MAAC, Thane. There, I learnt various concepts and applications related to 2D/3D animation, graphics designing, video editing, VFx, etc.
2016-2018: Passed ISC Science Grade 12 from St. Gregorios High School, Chembur. Studied subjects like Physics, Chemistry, Mathematics, Economics, and English.
2004-2016: Passed CBSE Grade 10 from DAV Public School, Thane. Studied subjects like Science (Physics, Chemistry, Biology), Mathematics, Social Science (History, Geography, Civics), English and Hindi.
2021+: Worked as a Senior Suppor Engineer at Netlify.
2016-21: Worked on various freelance video editing and graphic designing projects for various people and organizations.
2016-17: Worked at Hind Pictures as a video creator and made various music videos for their songs.
2014-15: Worked as a junior military instructor in Jidnyasa Cadet Core.
I was around 8 or 9 years of age (around 2008 or 2009) when I was first introduced to computers. It was to work on my school projects. But, the internet is a vast place. I started with basic PowerPoint presentations. Adding some built-in transitions and sound effects used to make me feel like a legend. But, I was more fascinated by how the answers to most of my questions were a few clicks away.
I am a very curious person and like to learn the inside-out of stuff. How something works the way it does. Questions like these randomly hit me and when my parents didn’t have an answer, I knew where to look for them. Just like that, I wondered how websites were made. I quickly searched for that on Google, and without understanding how results are actually shown to us, I clicked on the first results and they were obviously from websites like Wix and Weebly. Without any clear understanding of the web technology, I thought that’s how all the websites around the world are made. I created some websites without actually knowing what I was even doing. I don’t remember the URLs or the account details of whatever the ones I made. It would be good to be able to see them once again, but nevermind. I didn’t really have a content back then, but, I soon got an idea. I created a games website. I would embed games from other websites on mine.
That was a result of me wanting to always create something. Soon, I got familiar with a show called Kaun Banega Crorepati (KBC). It’s basically a Hindi version of Who Wants to Be a Millionaire? Inspired by that, I decided to create my own game (a physical one, not a digital one) to play with my classmates. I was getting better at using Microsoft Office Word and Publisher. So, I selected some questions from Google, designed a document and printed out game currency. Those were the days.
Later, when IPL began, there was a trend of a card game called Cricket Attax. Adapting to the trend, I quickly created my set of cards called Doraemon Attax and Element Attax. In Doraemon Attax, I used some 50 variations of Doraemon I found on Google and gave them random stats. I printed front and back side individually, cut them from the paper and stuck them together. Element Attax was a different game altogether, which, sadly, I myself don’t remember how to play.
Staying with the trend was in my nature. If something new happens, I quickly adapt to it and try to improvise it in my own way.
Becoming a digital content creator
Fast forward to 2016… I kept getting better at computers and understanding a lot more than what I did in 2010. I was getting started with applications like Adobe Photoshop. I had created some lyrical videos, using PowerPoint. I thought, that’s how they’re made, without having any idea about some of the best applications. But then, a life changing event occurred. I got a chance to visit my sister’s friend’s place. Her brother ran a music studio and when I visited it, that’s when I realised that music is produced on computers. That was a ‘My whole life was a lie’ moment for me. When I returned, I quickly started looking for music production apps and because I was already using Photoshop, I found Adobe Audition in my Creative Cloud application list. But, that’s when I really decided to just go ahead and install all applications from Creative Cloud without even knowing what each does.
I used Adobe Audition, Premiere Pro, After Effects, InDesign, Muse, etc. I didn’t understand a thing when I first opened it all, but, I managed to get a little hang of them in some time. I created some animated GIFs in After Effects, did some chroma keying in Premiere Pro and edited some audio in Audition. Later, I even created websites in Muse. So, that’s actually when I got super interested in trying out various applications.
But, this skillset got a further boost when I decided to formally learn some of these applications from MAAC in 2018. Well, the course just gave me insights and introduction to some of the applications, but, it definitely gave me insights on how stuff works. Now, I manage it myself. I have gained enough confidence to navigate my way through various applications.
Switch to Senior Support Engineer
I’ve explained a big chunk of this in one of my blog posts. But yeah, there was still a good switch from Pilot to Support Engineer. I was already a fan of the company and once I got to know there’s an opening, I just could not miss the oppurtunity. I knew I had to take it. Long story short, after a series of interviews and tests I finally made it! This was still a sweet unexpected turn of events and thus, you may notice that a lot of my website talks about animation graphics, etc. and very little about programming and JAMStack.
My favourite applications
I have tried quite a few applications in various fields and developed my favourites and preferences over time:
Photo editing: Adobe Photoshop
Vector graphics: CorelDRAW
DTP & Page layout: Adobe InDesign
Video editing: Blackmagic Design DaVinci Resolve Studio
Audio editing: PreSonus Studio One
2D animation: Adobe After Effects
3D modelling: Autodesk 3ds Max
3D animation: Blender
Compositing: Blackmagic Design Fusion Studio
Web development: Hugo, NuxtJS
HTML5 animations: Saola Animate
Game development: Unity
Programming: Microsoft Visual Studio Code
These ones are the ones that I prefer over their competitors. But, that doesn’t mean that I’m limited to these applications. If I have to, I do work with others. Sometimes, I need to work in some specific applications because it goes better with my workflow for that project. So, I’m very flexible in that area.
I aim to continue working on various more projects while continuing an excelling at my work. Every day is a learning day so, I plan on re-visiting a new me with improved knowledge and experience year by year.
About the website
This website is made from scratch in Hugo. I have used several open source libraries and countless hours of brain storming, trails and errors, research and what not. It took me a month to get it to the first stable release that included 8 of my best works. The website is now open source, the source code being available on GitHub.
Why a website?
I always keep on working something. Some of the projects succeed, some fail and some turn out to be exceptionally good. For those exceptionally good projects, I wanted a place where I could present them to other people. Yes, I did have social media to do that. Instagram for photos (and short videos), YouTube for videos and Facebook for both. Apart from these common social media platforms, I did have some real websites to showcase portfolio works like ArtStation. But that came with some problems of its own. The first thing was that, I couldn’t organise everything in one place. All my projects would be scattered due to different limitations applied by different websites. Posting, managing and sharing it on all would have been troublesome. Furthermore, those services are just used to show the final output, while I wanted people to know my experience, my thinking process. Now, I don’t have to explain it to someone. My website does that job for me. Finally, a technical problem was that, by posting my work on those websites, I’m technically not in charge of my data. They handle the search engine indexing, visibility, privacy, compression and basically everything. That’s something I didn’t want. I wanted uniformity and consistency. I can now control how to to compress something or where to store it. I can use the images and other resources inline with text or in some other way. It’s up to me. Thus, I had to create a website.
Making of the website
Choosing the framework
I had a lot of options to choose for, to make my website. I could use a simple website generating website, or Wordpress, etc. But, I went with Hugo. There’s a story for that too.
I could have easily gone with websites like Wix or Weebly, but, it was long since I had given up on those as I was always limited by the features that they offer and not what I want to create. Since I had started manually creating websites in like 2016 or so, I found that way better and customisable than using such editors.
I could have used a website building application and if Adobe Muse would have existed now, I’d probably have done it. But, even with these website building applications, it would have been a hassle. At the start, sure, it would have been easy and fun, but, as the website would increase in content, it’d have got difficult to manage. Since I wanted a blog-style website, I’d need features like auto arrangement of posts by date, site search, and so on. Such stuff doesn’t really exist in these applications and I can’t blame them as such features are mostly dependent on server. Anyways, I was again limited even in this case.
I could have used a PHP framework like WordPress. But, I wasn’t ready to pay anyone and finding a good PHP host for free is a lost cause. That ruled out WordPress pretty easily.
I was left with Static Site Generators. SSGs offered almost everything I needed. CMS like features, static generated code, etc. However, I still had to choose which one to go with. I thought of starting my own website when I got a little familiar with Node.js, React, Gatsby and so on. I was working on 2 websites in Gatsby already and had gained some confidence. So, I thought of using Gatsby itself. However, the websites I created were based on a starter and I just had customised them. I knew that with my then skill level, I just won’t be able to make one from scratch. I started looking for other starters and themes and there were a lot, but, I’m very choosy. I always ended up finding one little thing wrong about something and I used to try to fix that. If I could, I’d try customising it further, but that’d fail anyways. If I couldn’t, then that was a dead end already. I even considered NuxtJS, but that didn’t work out either. After almost reaching a dead end, I discovered Hugo. The fact that I could easily write basic HTML code that would generate an entire website for me, kept me hooked. I was pretty much familiar with HTML, CSS and vanilla JS. I knew that I can create a basic website by using these. So, that’s how I decided to go with Hugo.
Designing the website
I was excited to work in this new framework, but, I needed a design. I could have wrote something from scratch, but, that would have costed me a lot of time, would have got very difficult in very little time and might not have even looked as good. So, I was looking for CSS frameworks that are lightweight and easy to integrate with a vanilla HTML-CSS-JS workflow. After digging for a few days, I found an interesting candidate ‘UIKit’. It has an vast catalogue of components and provides a lot of features.
The next part included actually designing a layout. I needed to decide how my content is going to be displayed. The positioning, the image sizes, etc. I browsed through various references and through Hugo themes catalogue. I found an interesting one in that - Hugo Theme: Dream. I decided to try for a similar layout. I quickly experimented with Material Card Component and the results started being eye appealing.
Making of the website in Hugo
I have tried to think about the website from a user’s perspective. How can I make it easier for a user to figure out the website and use it? How should something be placed, where to give visual feedback, etc. Asking and answering such questions myself has helped me develop this website.
Open source libraries used
Though I created the website from scratch, it could not have been possible without some great open source libraries that I’ve used throughout the website. I can’t thank them enough for making this website possible. I’ve used the following libraries to put this website together:
- UIkit: Used as a styling solution.
- Turbo: Used as a SPA-style emulator.
- Glide.js: Used as a gallery for images.
- DPlayer: Used as a video player + next.
- hls.js: Used as a M3U8 parser for videos.
- FlexSearch.js: Used as a search engine.
- wavesurfer.js: Used as an audio player.
- ThreadTalk.JS: Used as a comments engine.
Other than these libraries, I have used some services without which this website wouldn’t have been possible:
- GitHub: Used as a version control system and a backend for comments.
- Netlify: Used to serve the website, collect analytics*, and submit contact form.
*The collected analytics don’t display any kind of personal data to me. They are access logs that every server collects.
Please note: I’m not affiliated with any of these libraries or any of their creators. I’m neither linked in any way to any of the external links on this website. All the copyrights and trade marks belong to their respective owners.
Security of website
I try my best to keep the website secure and safe for the users. I always try to keep the website with the latest versions of the dependencies, generators and APIs. Moreover, the website is a static website, thus, making it harder for anyone to directly breach its security. However, the libraries that I use might have vulnerabilities and they’re out of my control. I do my best to update them as soon as a newer version is available, but, 100% safety can’t be promised. In case of any security concern, please contact me.
Along with security, the website is designed to respect the privacy of the users. I, as a developer, haven’t added any advertisements, or tracking scripts to gather information about the users. However, just like vulnerabilities, I cannot say the same about the libraries and services that I use to generate this website. Although, none of them have been reported to be malicious, I cannot promise the same for future.