Doing API-first. Start with defining the swagger.json Then generate: - frontend-typings - frontend request services - backend routes and DTOs - database fields - use angular-jsonform for forms - use the swagger for frontend validation - use the swagger for backend validation - use the swagger to discuss api changes with the client This saves half of developing time and prevents 90% of your bugs
How though? All of the swagger open-api tooling is REALLY bad or abandonware. Did you write your own?
Ask HN: What were the things you did that made the biggest impact at your work?
171–180 of 216 posts
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#172That’s how I want to setup the CI/CD pipeline for my new startup boomadmin. Creating a PR automatically creates the docker images and frontend assets to serve a staging env per commit.
Pushing to master deploys the images to prod.
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#173Three things: voting down a move to microservices, identifying a fundamental flaw in a core data-structure that is the high-level impetus for future refactorings, and encouraging people to be discontent with multi-minute long build-test-debug (BTD) loop. Unfortunately, I find very long BTD loops to be personally offensive though, to the point it makes me emotional, which harms my ability to make my case. Despite know…
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#174Decided to block the calendar. Everyday from 12:30-4:30 pm my calendar is blocked and slacked is muted. If anyone had emergency, they are able to call me. Haven’t received a single call in 5 months. Wrote tons of code and spending time learning
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#175“For me, it was probably starting holding regular tech book review sessions.” How did you do these so people actually participated? My company is very deadline driven so people don’t really care about learning. Every attempt at regular learning meetings quickly died because people feel they don’t have time. Do you have a specific format? I have led regular meetings about coding style in another company. These went pr…
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#176Earlier quoted context omitted.
What are your main objections to BTD loops? Also, which alternatives do you suggest?
My main objection is it dramatically decreases your productivity. If building and testing takes 5-10mins (which is the case in our codebase) trying to fix a bug can take forever when you aren't exactly sure what the cause is. You don't want to try multiple fixes simultaneously because if something doesn't work you aren't sure which of the fixes (if any) might be causing the issue. Maybe a different way to look at it…
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#177- I invested a lot of time into speeding up our customer-oriented websites after I noticed we were regularly loading in 4-10 seconds. It wasn't seen as a major priority - however, past a certain load time for each page, you start losing users. We started off way past that certain load time and managed to end up at something between 1 and 3-second loads in most cases.
- This wasn't my idea, but a marketing manager I respect a lot once mentioned that people were spending a huge amount of time filling their date of birth while signing up. Something like 30 seconds or more. The reason was that we had been using a date picker that defaulted to the current year, so people would have to click back i.e. 30 times to select their year of birth. On his request, I replaced it with 3 lined-up fields of selects, and the time spent on average went down to 2 seconds.
- I had the chance to do a major rewrite of some legacy systems that worked fine, but weren't built to scale and lacked standardization - the company had a few hundred users in one country when they were made, and when I worked on it there was a locally-modified copy of the system for each country we were in.
The reason for it was that some of our integrations would cease to work due to third parties, and we had to implement a major upgrade, so I built a service to handle requests and standardized the old servers to only make requests to the service without being smart about how they're processed.
In the process, since everything was liable to break anyway if I didn't get it right, I updated every dependency (whether it was for the code or the server) that I could find. Not fixing what wasn't broken was a value that had served us up to that point, but we were racking on technical debt and it was a good chance to get rid of it. Sure, lots of things -did- break, but solutions were found. Technically, it'll help both me and future devs entering the project, and practically, since the integration chiefly targeted contract processing for our customers, the fact that we can still do contracts and nothing broke on the surface is a success.
- I implemented log aggregation across all our servers (using ELK) and it's been helping us track errors and server states a lot. We could have used something like Sentry, but we have millions of events going through on a regular basis, so it's cost-effective.
- We use an internal time tracker that works based on office card access events. I was always curious about racked up overtime, so I added in a calculation for it in the API and returned it in the response when loading a user's info without adding it to the frontend. I mostly used it for myself and told a few colleagues about where to look if they wanted to check. A few months later, overtime calculation was added into the tracker as a feature.
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#178Earlier quoted context omitted.
Some people use tabs as a sort of bookmarking/selective history thing. Firefox makes this especially easy with tree-style tabs. I'm still undecided whether it's good or bad.
It’s terrible! Do you leave every single piece food and cooking utensil you own out on the kitchen counter at the same time? No, cause it’s a workspace and that obviously makes no sense. Tabs are an ephemeral system that you can clean with a single mouse click. If there’s anything in your life you should be able to keep tidy, that’s it.
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#179Designing more forgiving interfaces. I work in the public sector in India. Usually forms here are phrased in threatening terms - you can submit any document only once, and there is a threat of perjury for just uploading the wrong document etc. I proposed that we can utilise cheap cloud storage so that users can submit documents as many times as they want, and as long as any of the uploaded documents are correct, then…
Re: Ask HN: What were the things you did that made the biggest impact at your work?
#180Earlier quoted context omitted.
Some people use tabs as a sort of bookmarking/selective history thing. Firefox makes this especially easy with tree-style tabs. I'm still undecided whether it's good or bad.
It’s terrible! Do you leave every single piece food and cooking utensil you own out on the kitchen counter at the same time? No, cause it’s a workspace and that obviously makes no sense. Tabs are an ephemeral system that you can clean with a single mouse click. If there’s anything in your life you should be able to keep tidy, that’s it.