Advanced Archmage

In LittleMaster Gap’s year, he experienced various fusion strikes.

However, the most frustrating thing among them was technology selection.

Back in the Magic Academy (2011), LittleMaster wanted to learn iOS, but found out that it required money. So he turned to Android.

At that time, LittleMaster was still using the cursed device WenduSi. He had just discovered that there was another operating system called Linux, and the portable artifact Nokia dominated a large market. Naturally, he had no concept of  (Apple), except that he knew from the news that Jobs had passed away from cancer, someone who had changed the world.

It wasn’t until two years later when he saw one of the three great speeches, “Stay Hungry. Stay Foolish,” that he saw the light.

PS: The other two speeches were J.K. Rowling’s “The Fringe Benefits of Failure, and the Importance of Imagination” at Harvard and Randy Pausch’s “Last Lecture” at CMU. They are all thought-provoking and worth pondering over.


After watching a few classes about Android, he gave it up, 886 (Internet slang for saying goodbye). There wasn’t any special reason, he just couldn’t generate the same enthusiasm as when he was playing with C.

During the campus recruitment, due to being in a remote location, there were not many companies visiting. Most of the presentations were at Science and Technology University or HeDa University. With a degree from the 233 University, LittleMaster naturally faced discrimination.

After dozens of failed interviews, he was finally moved by the heavens and got an offer from a NASDAQ-listed company, belonging to the Research and Development Department. The geographical location was also a dreamland for him.

Tears of joy streamed down LittleMaster’s face, and he immediately signed the contract.

HR MM (Human Resources Mind Master) said that the company was undergoing a transformation and it was shifting completely from C to Android.

So, fearing that he would leave the job soon after joining, LittleMaster spent his last year in college learning Android with a forced headstrong.

The outcome was the same as before, 886.


Originally, LittleMaster imagined that the “Research and Development Department” would be a place like the “Programming is an Art” described in the book.

However… most of the time was spent creating magical stones (Jars) using Java and integrating them into the source elements. Then LittleMaster would use Ubuntu to summon a modified version of Android, which would then be burnt into various high-imitation magical artifacts by on-site warriors.

In summary: Shanzhai (counterfeit)

And creating a simple effect in Android required a lot of Java, and the unchanging nature of Java itself led to different shooting modes. This left LittleMaster mentally exhausted.

Looking back now, he didn’t know if it was the shanzhai (counterfeit) or Java that was the problem.

To this day, when it comes to the most frequently used spell in the mage world, which has been used for years and always keeps one on the edge of their seat, LittleMaster still feels unhappy (*  ̄︿ ̄)

PS: Swift 8 provided Lambda and functional programming, which appears to be more concise.

Half a year later, LittleMaster unintentionally discovered the “Python Class” in Google Code University. For a mage who had only dealt with C, C++, Shell, and Java, this was like a shot of adrenaline.


During his Gap Year, LittleMaster discovered the amazing Ruby. After completing the courses on Codecademy, he realized that it was inconvenient to read Japanese propaganda on his phone. Additionally, the official declaration stated that they would not support the PC version, so he decided to build one himself.

However, the appearance of 🐶🐺 disturbed LittleMaster’s plan.

PS: Ruby is a dynamically typed, weakly typed language. Different types can be assigned, and the program can change itself at runtime. This often allows one line of Ruby code to accomplish what would take hundreds of lines in another language.
Yukihiro “Matz” Matsumoto mentioned in “The World of Programming” that the primary goal in designing Ruby was to be “fun.”

However, the trouble is that to ensure correctness, you need to constantly constrain it with tests.
The result is that the more tests you write, the longer they become and the more you write.
Overall, Ruby is compact but not suitable for large-scale collaboration.
On the other hand, statically typed, strongly typed languages can detect many errors at compile-time.

Golang itself is strongly typed but provides some convenient syntactic sugar.

What was most surprising was that, even with many requirements at that time, the author of Golang first wrote the formatter.

However, this is my favorite feature, saving so much time squabbling over code formatting.

By the way, at the first GopherChina conference, the author came to Shanghai and talked about the implementation of this thing.


Although Ruby had many advantages, after LittleMaster conducted some 🍐 (peer) testing, he embraced 🐶🐺 (Python).

By this time, most of LittleMaster’s planned Gap Year had passed.

If he continued down this path, he could have become a full-stack warrior.

However, there was a decisive event that occurred before, which changed the branch that his magic stack was lit on.

For some reason, after choosing 🐶🐺 (Python), LittleMaster, without any income, unexpectedly upgraded his tools. He exchanged his cursed device WenduSi for his own rMBP.

After completing a demo-level website, LittleMaster bought a certificate. When he opened Xcode, he was astonished Σ( ° △ °|||). He recalled how he struggled with tying button response events in Android, resulting in a lot of messy code. Xcode, on the other hand, elegantly achieved this with Ctrl + drag.

In the following time, LittleMaster followed Stanford’s white-bearded professor’s cs193p, “Head First iPhone Development,” and “iOS 7 Programming Cookbook.” The word “artwork” often roamed around in his mind.

After that, everything fell into place.


From ancient times, Archons emerge from full-stack mages.

LittleMaster avoids this path because he had his own plan.

The main reason being that being a full-stack mage was too tiring, in a sense, it was doing everything.

And this also meant that leisure time would be greatly compressed.

The smaller the ability, the smaller the responsibilities.

Ultimately, LittleMaster was just a good kid who liked to read books in his spare time.


However, he was too naive.

On the path to becoming an Advanced Archmage, there were these pitfalls:

WWDC

Over 100 dollars per year, and LittleMaster’s feet trembled when he downloaded it.

However, in Stockholm, he would still be excited by the cool technologies and would clap his hands.

Version Compatibility

LittleMaster once suffered from the torment of different Android screen sizes and foolishly believed that iPhone only had one screen size.

But after one year…

Swift’s Birth Pains

Various bugs, including the ones that came with the system…


The most tragic thing was that LittleMaster discovered another abyss:

Design

Before, LittleMaster was blind and couldn’t tell the difference between color and pixel.

After diving into iOS, he gradually improved, but his understanding of design was still within the range of a shooter.

Then, the author of “The Mythical Man-Month,” Frederick Brooks, released a book called “The Design of Design,” which hit LittleMaster hard. At the same time, there was another book with a similar name, “Designing Design,” written by the cool-headed Japanese master of graphic design, Kenya Hara.

At this point, three more branches were added to LittleMaster’s technology tree:

  • Sketch
  • Photography
  • Keynote

Fortunately, these were the things LittleMaster desired.

After all, what made LittleMaster decide to dive in was the feeling that he could create “art” even on a cold machine.

This is really a cry, right?

Translated by gpt-3.5-turbo