New beginnings: Google 🌞 of Code

Dhruvdutt Jadhav
May 14, 2018 · 4 min read

I got selected for Google Summer of Code 2018 under webpack. From knowing little about webpack before the organisations were announced, to being selected as one of the students, it has been a great ride. I can’t stress my gratitude towards the webpack community for being so helpful and welcoming to new contributors.

So, let’s take off. 🚀

About me

I‘m a software engineer and a student from DAIICT, India; currently in my final year of Masters in Information Technology. I’ve also pursued React Nanodegree from Udacity.

I absolutely love working with JavaScript. Frontend engineering is my game. There has been a huge ecosystem of libraries and frameworks popping every week. My primary tools have been React, Redux, React Native, webpack and NodeJS. I led development for a young startup couple of years back. I’ve done couple of industry internships and have been quite active in open-source. I’ve contributed and built ReactiveSearch — A UI Components library based on Elasticsearch for React and React Native. I’ve also contributed to Yarn, CRA-Native, React Router and bunch of other libraries.

Path to webpack

webpack has always been the backbone of everything I do in frontend development. I always feared to dive deeper in webpack or understand how it works internally. I got extremely thrilled and intrigued the day organisations list came out and I discovered webpack on the list. This was the first time webpack applied and got selected for GSoC. I made webpack my target goal and didn’t even bother to look for rest of the organisations.

Contributing

After discovering webpack on the list, I instantly started gazing around all webpack projects, ideas, community discussions, conference talks. Soon, I discovered webpack 4 plans which wasn’t released at that time. I started contributing to webpack CLI. The CLI was introduced a year ago with a goal to improve webpack user experience by providing flexibility. Apart from compiling builds and setting up webpack for an existing/new project, it comes handy for migrating webpack configuration for version upgrades and also to add, update or remove properties from existing configurations.

After some merged PRs and contributing for a week, Even Stensberg took it to Twitter to appreciate me. This exponentially amplified and boosted me and I kept on contributing more. I also approached some of the new contributors like Jevan Chan, buoyantair. We helped each other for contributing and debugging the code.

I literally couldn’t sleep that night because of the excitement.

Work To Do

During this summer, I’m going to work on webpack CLI. The plan is to cover most crucial things on the road-map like refactoring efforts to AST transformations; adding static typing and TypeScript support; rewriting scaffolding generators to make them more maintainable and testable; adding scaffolding and transformations for new commands like add, update, remove, and many other general improvements in visuals.

I’m going to kick-off this summer with the most crucial thing i.e. AST transformations which is the backbone of managing and making changes in the configuration file. Abstract Syntax Trees or ASTs are a hierarchical tree-like representation of code. It helps us understand and read relationships between different elements of code. An AST transformation is an action of modifying this tree (i.e. changing an existing AST to a new AST). The new approach is going to simplify many AST checks, uses recursion and does lots of optimisations to existing flow. The initial work has been already pulled off in a PR. The plan is to work with this new approach for other transformations and commands like add. This will make the transformation a lot easier to maintain and reduce bulky, unnecessary code.

Last but not least

This is the beginning of a new open-source story which is going to be quite commendable. It is going to be an intense summer in terms of work and the summer itself (45°C / 113°F).🔥

I’ll talk again about the other parts of the plan in the follow-up articles. Looking forward to y’all for this amazing expedition. Cheers!

webpack

The official Medium publication for the webpack open source project!

Dhruvdutt Jadhav

Written by

JS Engineer | GSoC 2018 | Geek ⌨

webpack

webpack

The official Medium publication for the webpack open source project!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade