Adaptability

    I am sure that each of us has thought more than once about what awaits us in the future. I'm not going to waste your time on useless, for the most part, thoughts. Rather, on the contrary, I would like to cheer you up (the post is Friday) and draw your attention to the importance of strategic planning of your life using a good example.



    Hereinafter, the largest collection of translations of the wonderful comics Geek and Poke will be used .



    A curious and completely real example: Dave Rooney wrote about his life:

    Recently, I participated in a conversation on Twitter that the obsession of software developers on their tools borders on religious fanaticism. Do not get me wrong - good tools increase the effectiveness of developers, and their productivity, in turn, depends on the extent to which they have mastered their tools.



    However, it surprises me that we work in an industry in which changes are not only normal but also expected. The rate of change is constantly growing and is not going to decrease. This is strange, because the developers seem reluctant to replace the usual tools.



    Perhaps my point of view is influenced by the fact that a significant part of my career I worked as a contract developer. As a rule, they introduced me to the course of a new assignment, showed which machine I would use, told what development environment the team uses, a source control system, etc. I did not have freedom of choice - either I accept the terms or seek a new contract. I admit that I never refused the contract because of the tools.



    Here is a list of the environments I've worked in since I started writing code:

    30 years ago (1983)

    • Apple command line writing BASIC and assembler code.
    • Few editing features, but the less you know, the better you sleep.
    • A year later, Sed or a similar editor was installed on the mainframe using FORTRAN at the university.

    25 years ago

    • xedit on an IBM mainframe with REXX language.
    • It was a decent full-screen editor that could be automated to provide a full-screen user interface for mainframe applications.
    • I also used vi for some purposes, which compared to headit seems cumbersome and backward.

    20 years ago

    • I used the editor for, not surprisingly, the C language and several others.
    • The editor was convenient to use and I got to know it quite well.

    15 years ago

    • I worked in the Powerbuilder, Visual C ++, and Visual Basic integrated development environments.
    • Editing outside these tools was inefficient and risky.
    • I got the hang of working with them.
    • IDE editors are well placed to do the job.
    • Also used vi, running remote shells on Unix systems.

    10 years ago

    • Various Java IDEs: PowerJ, JBuilder, Eclipse depending on the client organization standard.
    • Run tests in the IDE.
    • Used Textpad to edit text outside the IDE.
    • In terminal mode, I used vi on the remote host.

    5 years ago

    • Used Eclipse and NetBeans for Java, Visual Studio for C \ #.
    • Run tests from the IDE.
    • Used Textpad to edit text.
    • In terminal mode, I used vi on the remote host.

    Now (2013)

    • Sublime Text 2 for editing text and code.
    • I execute tests from the command line.
    • In terminal mode on a remote host, I use vi.

    Sublime Text really quickly performs indexing and text search among thousands of files, but these are flowers compared to the ability to find a method definition in Eclipse or bypass the class hierarchy. I can write macros in Sublime that can automate repetitive operations, which I liked in Textpad and was sorely lacking in the IDE. However, I do not have automatic refactoring available in Eclipse and NetBeans.



    When I watch the developers working in Vim and Emacs, it seems to me that I look at the virtuoso performance of the pianist - the whole process looks so laid-back! It amazes me that these tools are more optimized for writing code than for analysis and refactoring.



    Only one proposal to use others - other than Vim and Emacs - tools will cause serious unrest. But from my own experience I’ll say that it’s not so difficult to adapt to new tools. Of course, it will take time, you will have to get some skills, forget others, but flexibility is worth it.

    Still, it’s not the fastest or the smartest that survive, but the most adaptable to change.



    Success in a very difficult business, as it turned out.

    Sources:


    Also popular now: