TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: What processes/methods do you find helpful in your day to day work?

9 点作者 vishaalk将近 5 年前
I searched but couldn&#x27;t find something similar. I was debugging an issue today and had to write a short script to get the list of affected entities.<p>I came from a C++&#x2F;C# background and I&#x27;m newer to using IPython, but it&#x27;s absolutely changed how I develop for the better. I definitely feel more productive, but I can&#x27;t prove it.<p>That being said, I noticed that adhering to some more discipline while writing the script, like using a real debugger instead of print debugging, writing types for my functions instead of passing around tuples&#x2F;dicts, and tests probably would&#x27;ve helped even more.<p>So HN, what processes&#x2F;methods do you find helpful in your day to day work?<p>Another way to phrase this is what things have you learned that changed how you work for the better?

2 条评论

sethammons将近 5 年前
It is all about feedback cycle. You want a fast process to tell you if $thing worked.<p>Unit tests are that are fast, a dev environment with your running service that can be edited&#x2F;updated quickly, acceptance tests that run automatically before merging to master, structured logging and log analysis tooling like splunk, and metrics emitted&#x2F;collected. I need to be able to update a line of code and get feedback on that update in a few seconds (or faster, thank you IDE). Add onto that a great deploy story (solid ci&#x2F;cd), alerts, historic metrics to compare to, etc. These are things that are mostly independent of the language you are in, and the tooling for the language is super important too. Self documenting method signatures in the form of static typing is huge for me. I can&#x27;t stand when I find myself in python or perl and don&#x27;t know what the incoming variable is - I&#x27;m stuck putting some logging or a break point to see what kinds of data are coming into that function.
muzani将近 5 年前
1) Declarative programming was a big thing for me. Imagine code like a real world tree, with roots, trunk, branches, leaves. Your trunk and branches should be declarative, the leaves and roots should be imperative. Most of the code you read and write should tell you what is is doing rather than how it is being done. You don&#x27;t have to pick up functional programming; you just have to use functions for most of your code.<p>2) <a href="https:&#x2F;&#x2F;xkcd.com&#x2F;1205&#x2F;" rel="nofollow">https:&#x2F;&#x2F;xkcd.com&#x2F;1205&#x2F;</a><p>I have that as my desktop background. Let&#x27;s say, you do something 30 mins&#x2F;day, every day. If it takes a week to automate that, do it. Applies to home processes as well.<p>3) IDE keyboard shortcuts. The big ones are select scope, jump to definition&#x2F;uses, search all files, rename variable, extract as variable&#x2F;method, jump to the opening&#x2F;closing brace, move lines, show docs, reformat code, move to the next tab. This is the main reason I subscribe for Jetbrains.