Skip to main content
55 votes

What is the most efficient way to continue developing a piece of software in the long-term?

Let me speed you up by slowing you down. Ever heard who the best person is to hire as a tutor? It’s not the teacher. It’s some student who just took the class. Who remembers the struggle. Therefor I ...
candied_orange's user avatar
30 votes

What is the most efficient way to continue developing a piece of software in the long-term?

Work as if you are on a team Think of your future self as another team member, with your same skillset but no knowledge of your code. Follow all the processes you would normally follow for another ...
John Wu's user avatar
  • 27k
21 votes
Accepted

On a once a day user action: 24 Hours Reset vs. Midnight Reset

I'm am surprised as usually I would expect the midnight reset. However, It does come with a major disadvantage, in that there is more than one midnight every 24h. You need to choose your timezone. ...
Ewan's user avatar
  • 84.6k
17 votes

What is the most efficient way to continue developing a piece of software in the long-term?

It is entirely normal and expected that you have to re-learn a codebase after you have not worked with it for a longer period of time. And the longer that period is, the larger the part that you need ...
Bart van Ingen Schenau's user avatar
16 votes

What are programming languages written in?

What are programming languages written in? Programming language compilers and runtimes are written in programming languages — not necessarily languages that are older or are different than the one ...
Erik Eidt's user avatar
  • 34.8k
15 votes

What are programming languages written in?

Think of it this way. Python is written in C, No, it is not. You seem to be confusing a Programming Language like Python or C with a Programming Language Implementation (e.g. a Compiler or ...
Jörg W Mittag's user avatar
14 votes

On a once a day user action: 24 Hours Reset vs. Midnight Reset

Off the top of my head: It may be easier to implement the "24-hours since last action" version If the user does not perform the action exactly 24 hours after the last time, then eventually they may ...
Richard Ward's user avatar
13 votes

What is the most efficient way to continue developing a piece of software in the long-term?

Contrary to popular wisdom (and especially contrary to depiction in popular media!), successful programming is not a matter of innate genius or of extreme intelligence. It is predominantly a human ...
Kilian Foth's user avatar
11 votes

What is the most efficient way to continue developing a piece of software in the long-term?

As a complement to other answers, one of the most important things to document (i.e. write down), and often neglected, is design decisions: why you chose to do things the way you did. Some decisions ...
Pablo H's user avatar
  • 694
9 votes

What are programming languages written in?

Each machine has an instruction set it natively executes. That instruction set is the first language. The first higher level language was assembly, literally allowing the programmer to write a long ...
Kain0_0's user avatar
  • 16.6k
8 votes

On a once a day user action: 24 Hours Reset vs. Midnight Reset

As other answers have mentioned, the 24hr method is more friendly to multiple time zones, and is just as easy to code, as you just store the last successful timestamp for each user. It also has the ...
Eph's user avatar
  • 199
8 votes
Accepted

How do you know where you stopped in your codes after a 2-week break?

Copious notes. Write down your thoughts, your progress, in as much detail as needed to clear your mind. It's no different from when you do a problem analysis tracking down a bug and someone else is ...
jwenting's user avatar
  • 10.1k
7 votes

How do you know where you stopped in your codes after a 2-week break?

The most obvious recommendation is to always stop at a point where all of the work is "done". So when you return, you start on something new instead of trying to remember where you left of. Instead ...
Euphoric's user avatar
  • 38.2k
7 votes

Looking for a sanity check, do you alphabetize your code? Is that even a thing?

Sorting method definitions by alphabet is definitely unusual, and I can't see it helping readability in any way - professional code bases should be handled with IDEs that make the findability of ...
Kilian Foth's user avatar
6 votes

Looking for a sanity check, do you alphabetize your code? Is that even a thing?

There are some standard coding conventions for Kotlin, directly provided by JetBrains. They recommend this: Do not sort the method declarations alphabetically or by visibility, and do not separate ...
Doc Brown's user avatar
  • 221k
6 votes

Is it better to write the whole feature and then debug or do it incrementally?

There is a reason why "Test Driven Development" has become extremely popular today - it lets developers write a little bit of test, a little bit of code, compile it, test a little (maybe debug it, if ...
Doc Brown's user avatar
  • 221k
5 votes

On a once a day user action: 24 Hours Reset vs. Midnight Reset

About your problem with the 24h duration between actions, some companies instead use a 22h duration, this way the users get a bit of leeway on the exact moment of the day where the action is required ...
TheNaturalTanuki's user avatar
4 votes

How do you know where you stopped in your codes after a 2-week break?

How do you know where you stopped in your codes after a 2-week break? The same way I know where I stopped after I take a bathroom break. Notes. You take notes, you make to do lists, you don't walk ...
candied_orange's user avatar
4 votes

What is the most efficient way to continue developing a piece of software in the long-term?

There are lots of good tips here already. Perhaps I can add one more. I have about two dozen embedded hobby projects with separate code bases. And in addition to the other tips here about ...
Blaine Osepchuk's user avatar
3 votes

What is the most efficient way to continue developing a piece of software in the long-term?

Others have made very good points, but it's worth saying that reorientation and "task-switching" time is to be expected after you've put the code down for a while, and moved mentally onto ...
Steve's user avatar
  • 12.7k
3 votes

What is the most efficient way to continue developing a piece of software in the long-term?

My advice would be to start by creating a library of reusable components that you can use in all your projects. This is especially true if you find yourself copying code between projects or re-...
JonasH's user avatar
  • 6,397
3 votes

How do you know where you stopped in your codes after a 2-week break?

Personally, I leave an intentional compile error. I write a short comment to myself in the code. Then I uncomment it. When I get back, by force of habit I start up my IDE, build, and...hey, ...
Kyralessa's user avatar
  • 3,724
3 votes

On a once a day user action: 24 Hours Reset vs. Midnight Reset

tl/dr: 24 hour resets are the lazy man's way of minimizing load spikes In addition to the above answers, the midnight-reset encourages surges of traffic. If the action becomes available to all ...
Conor Mancone's user avatar
2 votes

Is Dependency Injection A Standard in PHP and Laravel?

Or in actuality, how to tell if a certain technique has became a standard in certain language / framework? Closest thing to a standard in PHP is PSR. Apart from that, all frameworks, libraries and ...
Félix Gagnon-Grenier's user avatar
2 votes

What is the most efficient way to continue developing a piece of software in the long-term?

What are the most efficient and best ways in software development to avoid this 'dead'/'lag' time when you pick up development of a project again after a prolonged break from working on it? A few ...
chux's user avatar
  • 648
2 votes

Practical Advice for rapidly changing code maintainability

I would like to spend more [time] doing what I'm good at - the math and stats - and less of it on what I'm not as skilled at - organizing code. The problem is that you're not being employed to do ...
Steve's user avatar
  • 12.7k
1 vote

Looking for a sanity check, do you alphabetize your code? Is that even a thing?

Alphabetized members is one of several potential code organization strategies. They are generally aimed at making it easier to navigate within files predictably, which is particularly helpful with ...
Steve V's user avatar
  • 139
1 vote

How to execute code "under the hood" in my no-code platform

In the scenario you describe JSON is being used as a DSL. DSLs interpret "tokens" to create machine readable action. However, unlike real languages they require a custom parsing engine and ...
John Peters's user avatar
1 vote

What are programming languages written in?

The oldest programmable computers (like the ENIAC) were programmed by physically setting mechanical switches and plugging wires to certain configurations which caused the CPU to perform the desired ...
JacquesB's user avatar
  • 62.4k
1 vote

Efficient way to find Xor of pairs with given target X in a range 0 to K

Rainbow table Unfortunately the work has to be done sometime, but if you have the space you can do a lot of that work once. The Rainbow table is literally a computation table. Given X, Y, and the Op ...
Kain0_0's user avatar
  • 16.6k

Only top scored, non community-wiki answers of a minimum length are eligible