Posts

Showing posts from May, 2022

How what we learned at KubeCon EU 2022 will impact our product roadmaps

Image
After two years of only virtual KubeCon events, the GitLab product team was excited to participate in and meet colleagues, partners, and more from our industry at KubeCon EU 2022, held in Valencia, Spain. We were present with four product leaders, a software developer, and a UX researcher. This post summarizes our primary takeaways from the conference, an experience that will affect our roadmaps. We will discuss the following topics: Internal platforms and GitOps Secrets management Infrastructure integrations WebAssembly a.k.a. WASM There were 32 topic types and several 0-day events at KubeCon. Many talks focused on a few tools. Many Cloud Native Computing Foundation ( CNCF ) projects had their community meetings during these days. Some talks were given IRL, and others were broadcast virtually with live Q&A. There were a variety of topics and approaches. There were many talks about the various aspects of cluster management, too. However, we left this topic out on purpose be...

Lingo: A Go micro language framework for building Domain Specific Languages

Image
Domain Specific Languages (DSL) are small, focused languages with a narrow domain of applicability. DSLs are tailored towards their target domain so that domain experts can formalize ideas based on their knowledge and background. This makes DSLs powerful tools that can be used for the purpose of increasing programmer efficiency by being more expressive in their target domain, compared to general purpose languages, and by providing concepts to reduce the cognitive load on their users. Consider the problem of summing up the balances of different bank accounts in a CSV file. A sample CSV file is provided in the example below where the first column contains the name of the account holder and the second column contains the account balance. name, balance Lisa, 100.30 Bert, 241.41 Maria, 151.13 You could solve the problem of summing up balances by using a general-purpose language such as Ruby as in the code snippet below. Apart from the fact that the code below is not very robust, it co...

3 keys to success for product operations

Image
It is official. Product operations is a thing. A quick Google search will pull up a long list of articles singing the praises of everything product operations has to offer, from making product managers more efficient to data collection and synthesis. When I first took on product operations at GitLab , there wasn’t a lot of definition or guidance on the topic. I understood what product operations meant because I’d been “doing it” as an inseparable part of my product management and product leadership roles for some years. But I’d never had the opportunity to focus solely on product operations. As excited as I was, I was also nervous. GitLab was accelerating toward an IPO and both the product management team and the product were in hyper growth mode. And, to boot, the all-remote, cross-functional teams were in motion, sync and async, day and night, all around the globe. So, I reached out to peers who had already started their product operations journey and leveraged the perspective, pr...

When the pursuit of simplicity creates complexity in container-based CI pipelines

Image
In a GitLab book club, I recently read " The Laws of Simplicity ," a great book on a topic that has deeply fascinated me for many years. The book contains an acronym that expresses simplicity generation approaches: SHE, which stands for "shrink, hide, embody." These three approaches for simplicity generation all share a common attribute: They are all creating illusions - not eliminations. I've seen this illusion repeat across many, many realms of pursuit for many years. Even in human language, vocabulary development, jargon, and acronyms all simply encapsulate worlds of complexity that still exist, but can be more easily referenced in a compact form that performs SHE on the world of concepts. Any illusion has a boundary or curtain where in front of the curtain the complexity can be dealt with by following simple rules, but, behind the curtain, the complexity must be managed by a stage manager. For instance, when the magic show creates the spectre of sawing pe...

The Future of the GitLab Web IDE

Image
Way back in April 2018, GitLab 10.7 introduced the Web IDE to the world and brought a delightful multi-file editor to the heart of the GitLab experience. Our goal was to make it easier for anyone and everyone to contribute, regardless of their development experience. Since its introduction, tens of millions of commits have been made from the Web IDE, and we've added features like Live Preview and Interactive Web Terminals to enhance the experience. Now, we're excited to share some big changes we have in store for the Web IDE in coming milestones. What makes an IDE? Over the years, we've learned a lot about how you all are using the Web IDE. We've compared it to our Web Editor in the repository view. We've spoken to developers, designers, product managers, and technical writers alike. Almost universally, we hear that the Web IDE is greatfor small changes: a quick change to a config file, an update to a Markdown file, or a typo fix in a merge request. These ligh...

GitLab 15.0 released with WYSIWYG for Wiki, container scanning in all tiers

Image
Today, we are excited to announce the release of GitLab 15.0 with container scanning in all tiers , internal notes , better links to external organizations and contacts , and much more! These are just a few highlights from the 40+ improvements in this release. Read on to check out all of the great updates below. Along with these exciting new features, there are a few breaking changes in 15.0 . Want to learn more about where we're headed from Product leadership? Register now for the GitLab 15 launch event ! To preview what's coming in next month’s release, check out our Upcoming Releases page , which includes our 15.1 release kickoff video. This month's Most Valuable Person ( MVP ) is Lee Tickett Lee has been instrumental in building the foundation for our CRM feature . He has contributed to 7 issues and many more merge requests to deliver this over the past few milestones. This foundation allows users to set up and link organizations and contacts to issues direct...