As regular readers know, I work in Luoyang, a third-tier town. The company is small, developers at the most of the time also a dozen, at least when I was a commander. Because I was in control of all the company’s core code, I was always arrogant. The boss also took me to have no way, sometimes in order to add a function, but also have to see my face. My mantra to my boss is, “This requirement is technically impossible.”

Sometimes, when my boss was pushed to the limit, he would be furious in the office, but I still showed no weakness: “If it can’t be achieved, it can’t be achieved, and it’s no use losing your temper.” My boss didn’t ask me to do anything more than add something like automatic money. Ha ha ha, just kidding.

To be honest, some of your boss’s needs are hard to implement technically, but some aren’t. I threw out the “technically impossible” statement just to silence my boss, because the requirements are endless, so I might as well use the time to write a few articles to share with you. You see, I have a real love for writing, for my fellow readers.

01, the technology is very bad

I have to admit, my skills are terrible. Although I have ten years of working experience, I am only at the level of an elementary programmer. Not out of self-abasement, but out of self-knowledge.

For example, self-criticism. A few days ago I posted a technical post titled “A Problem with 3.7 million Views on Stack Overflow: How do Java Strings compare?” I thought it was interesting and thorough. Instead, I got sprayed and took screenshots to humiliate myself.

Due to my poor technical skills, I sometimes feel overwhelmed when my boss asks for something. I remember one time, he wanted to create a “TWO-DIMENSIONAL code poster sharing” function: users click “my poster”, the background to obtain the user’s wechat nickname and avatar, according to the poster template customized to generate the user’s exclusive two-dimensional code poster.

Two-dimensional code posters I have seen a lot, we should also be common, but I use the code to achieve it, really did not do before. So I said, “This requirement is technically impossible.”

I don’t want to give up on my skills. When I went to sleep at night, I was thinking: “This TWO-DIMENSIONAL code poster is really necessary to spend some time to study, if this demand can not be realized, but really a little unreasonable.”

When I arrived the next day, I started doing research. In less than an hour, I had a general idea.

  • When the user clicks on the menu, the user name and the address of the user’s avatar are retrieved.
  • Load the poster background and get the Graphics2D object.
  • Use Graphics2D to print user nicknames on posters.
  • Use Graphics2D to print the user’s image on the poster.
  • Graphics2D was used to draw user-specific QR codes on posters.
  • Upload the generated TWO-DIMENSIONAL code poster file to the temporary material library of wechat.
  • Call wechat API to return temporary story ID.

Train of thought has, need to start to practice. After some trial and error, it was found that the boss’s requirement was technically achievable. After I update this function, the boss complacently patted my shoulder and said: “Wang 2, you really cow force.”

PS: If you are interested in the TWO-DIMENSIONAL code poster, you can check my other article “Java generation imitation kingsoft CIba TWO-DIMENSIONAL code sharing poster”, the source has been open source on GitHub, the address is as follows:

https://github.com/qinggee/poster/tree/jinshanciba

To be honest, I blushed a little when my boss tapped me on the shoulder — “this requirement is technically impossible” became my FIG leaf. If you are in pursuit of technology, please do not say this sentence lightly.

02, too lazy to do

I’ve said very little about the company. But readers often ask me: “Second brother, what do you do in Luoyang?” In order to satisfy everyone’s curiosity, here is revealed: do a wechat mall.

You’re gonna be disappointed. In fact, no matter what you do, as long as you can survive, it’s not bad. We are still breathing, hahaha (wry smile).

Since it is wechat mall, wechat payment is indispensable. But the boss does not pass me unluckily, do pay treasure to pay even. As we all know, alipay is not allowed to be used in wechat public accounts; It can’t be said that it is not supported, you need to jump to the phone’s own browser, copy a long string of characters, and then jump to Alipay and so on. It’s cumbersome and unnecessary.

Based on this scenario, I rebuffed my boss: “This requirement is technically impossible. Wechat public number, how to pay alipay? Do it yourself!”

The boss was livid. But I have to hold it in, because I’m such a jerk.

The next day, when we meet again, the boss and the guilty mind, not to my research, said in a certain mall to see the alipay payment; In addition, wechat payment needs to have a 90-day probation period, which is not able to issue funds. It is necessary to do Alipay payment. Although the payment is not good, it can at least solve the problem of issuing funds.

Out of the professional ethics of “give money to do things”, I reluctantly started the study of Alipay payment, unexpectedly, quite simple. It’s clear from the API that the SDK also encapsulates payments, so it took me less than a day to complete the task.

After I update this function, the boss patted my shoulder proudly again and said: “Wang 2, you really cow force.”

To be honest, I blushed when my boss tapped me on the shoulder — “this requirement is technically impossible” was my excuse for getting out of it. If you are responsible for your work, please don’t say this sentence lightly.

03, to reflect on

The students in the first-line factories may have little chance to be as hard as I am, unless it is the initial stage of the company. But I think we’re going to have to get tough with the product.

A lot of times, when the product puts forward requirements, it always thinks that there is absolutely no problem with the technical implementation, and then after the technical evaluation, the feedback is not recommended, and then the problem comes: the product thinks that the developers do not want to do it, and deliberately put up all kinds of difficulties or intentionally jammed.

Is it really so? I think the answer is not only that developers don’t want to do it, but that they don’t. And, of course, can’t really do it.

To be fair, “as long as you want to do, nothing is technically impossible” is equivalent to “nothing is difficult if you put your heart into it.” It is not easy to argue against it. But there are several plausible answers, such as “downtime problem” and “money in place.”

In terms of our own development as programmers, we need to say less “this requirement is technically impossible” and more “Oh, I’ll think about it, I’ll look into it” out of reverence for technology and career progression.

04, thanks

Well, readers, that’s all for this article. ** You can see the best programmers here, and you’re up for a raise. If you don’t like it and want to see more, I recommend a few more.

@programmers, get over your obsession with multi-threaded work

Programmers, please master these core survival skills

Programmer, take your first job very seriously

In what way do programmers usually take private jobs?

If you have any questions and need my help, please leave a comment. If you want to blow off steam, gently spray.

Here comes the routine! If you are a hardcore reader of the second brother, ask for a thumbs up, so that more students who need nutrition can see this article. If you want to see my second brother’s updated article for the first time, you can scan the qr code below and follow my official account. Bye-bye, and I’ll see you in the next article!