This is a hands-on guide for AWS CDK created with ChatGPT. It may contain errors. ️ Chapter 1: Introduction to Infrastructure as Code and AWS CDK Scene 1: What is IaC? Why Use It? Reimu: Hey Marisa, have you ever manually clicked around th…
Use a graph database to advance package-by-feature Graph databases are powerful for interactive architecture visualization Software architecture is essentially a graph. If the contents of File A are used in File B, and File B is used in Fi…
Visualizing and validating frontend dependencies I want to visualize frontend dependencies In many full-stack backend web frameworks, the directory structure is predetermined—controllers go here, models there, views over there. On the othe…
How to automatically determine domains without relying on humans Once you have many teams, you want a modular monolith There are several terms used to refer to dividing a program into modules: Multimodularization Co-location Modular monoli…
Paper Notes Introduction: Is it effective to shuffle team members project by project? When working at a startup, chronic understaffing often means teams form and dissolve on a project basis, so member composition never stabilizes. Converse…
A defense technique against "Can you do that too? ❤️" Introduction When you’re at work, you may find tasks suddenly piling up that you didn’t originally have. Sometimes it’s simply because the person who used to handle them quit and you au…
Reading a Microsoft Research Paper Preface As remote work expanded during the COVID‑19 pandemic, large U.S. companies have begun collecting evidence—by comparing before and after—on whether productivity has actually increased. Microsoft is…
Can a Tech Lead Ignore the Organization? Mention in “The Mythical Man-Month” About Organizational Structure and Bugs Achieving a stable, bug-free system in software development is an eternal challenge. We do code reviews, write test code, …
An Overview of Rails Development Comparing the Statistics of Open Source Rails Repositories Rails has a wealth of implementations for open source web services. Previously, I compared the rails stats of a non-public commercial web service, …
Comparing Rails with frameworks in other languages There are a lot of Zoltrak in Rails In a work called Funeral Freelens, there is a magic called Zoltraak. At first, it was recognized as a rare magic because of its power, but as a result o…
List resources Public design systems have scope variations A design system is a mechanism for providing consistent design in software development. Originally, it is a tool to eliminate implementation style difference within a company or or…
Want to learn with real-world examples I Want to Learn with Real-World Examples When learning development in a new programming language or genre, reading books and official documentation is helpful. However, there is often a significant ga…
How to look for high complexity parts I want to visualize the messiness of code When I usually develop with Ruby, I sometimes encounter code that I find difficult to read. I wish I could refactor it freely, but software development at work…
More important than years of experience What are the key factors in estimating a programmer's ability? When software engineers and designers register with a job search site, they may be asked to submit a skills sheet: how many years of Jav…
Dogmatic and prejudiced. Preface When you increase the number of developers to grow a software product more, at some point you will need to reorganize the team structure. This is because as the complexity of the breadth and depth of what w…
IMO Delegate in Ruby and Rails When a class is too bloated because all the requirements are packed, you probably want to split it up. When designing tables, you may want to normalize and split it into separate tables. There are the other w…
How to measure cohesion in Python What is Cohesion? Cohesion is a software metric that measures the proximity of related methods and variables. For example, in LCOM4, the functions accessing a variable in a class are traced and clustered. …
Software engineer information gathering summary. Thin and wide. General Japanese X(Twitter) A tweeting social network, where a self-proclaimed 3-year-old can share useful insights. Hatena bookmark Social bookmarking website. You can find u…
Is the development speed slow, or is what you are making bad? Preface: Can rails stats measure company value? rails stats is a handy command to get statistics about the Rails repository, and you can do the same in Laravel with php artisan …
Common problems Preface: quarrels tend to occur in IT companies Working in an IT company, you may occasionally encounter quarrels. We often hear stories of co-founders leaving a start-up company due to a dispute. It is also rather common i…
Is a full-time Scrum Master needed? Introduction I recently read the paper "The New New Product Development Game," which is the source of Scrum. It is generally a discussion of how US companies can become as good as Japanese companies by a…
How to find the frontend code smells Continuous Inspection with SonarQube There are some ways to quantify the readability of a program. For example, Cyclomatic Complexity and Cognitive Complexity are used. Cognitive Complexity is considere…
Introduction to Software Bill of Materials What is SBOM? SBOM (Software Bill of Materials) is a list of software components and their dependencies. It is not always the same as the list of libraries because some of the software may use in-…
Notes from reading "Fujitsu from the inside". I read "Fujitsu from the inside" This is an old book from 2004, but I read "The Collapse of Fujitsu's 'Performance-Based Management' from the Inside" , which describes the inside story of Fujit…
Read Unity's financial report Runtime Fee will be introduced in Unity Update: Unity withdrew some of the changes. It has been announced that Runtime Fee will be introduced to Unity from 2024/01. Unlike the previous billing model, the fee i…
How to select technology stack Preface When you develop something, it is often necessary to use some external services or tools. Unless it is a hobby development, we want to make decisions with a certain level of rationality. Here is a che…
One of the most common complaints made by new software engineers is that they have a hard time studying. In web development, where they have to study every time a new technology comes out, sometimes outside of work hours, or they feel left…
Reference for implementation Preface: Let's read open source implementations When you are doing web development, you may feel uneasy whether this way of writing is normal or not, or whether the direction of implementation is good or not. I…
Reading Twitter's internal structure. Introduction Microblogging services like Twitter have a lot of posts in a short period of time. Especially for the timeline, simply moving data in and out from the RDB will not scale. I found some arti…
Notes about HackerRank. What is HackerRank? HackerRank is a learning site where you can learn programming by solving problems. While most of these sites specialize in either web development or competitive programming, HackerRank covers bot…