There is a common attribute among generally smart people, the tendency to make things that don’t need to be complex, complex. Making something trickier than it needs to shows everyone else in a very tangible way that “oh gosh, look how smart I am.”

No.

If you are truly smart person, make it simple.

Make it as simple as possible, but no simpler.

Don’t make it tricky. Don’t rely on cool side-effects that only you know about.

Don’t make it so not even you can understand it.

Make it simple. Make it obvious. Make it so when the next person looks at your code (or widget, or whatever it is that you’re working on) thinks to themselves, I understand how that works. Code especially is something that is made for humans to consume. Make it so the next person, even if that next person is you, can work on it with ease.

Please, don’t complicate things. Please, don’t hide how things work.

Don’t try to be smart.