(This post is in some places refering to the post under title "How much code can you write without testing")
I was doing some other things than programming before, something like art, and it is allways interesting to me to think on such a way to make my self aware of details.
With this topic, mentioned above,I was still thinking where it is going. I didn't wanted to think about it that it's silly. I was suprised with concrete answers, simply it suprised me. I was thinking what does it all mean. I actually needed bit time to formulate my thoughts.
"If You have question to ask: just ask.". Sometimes I don't want answer. In last three years I've readed more than ten thousands of pages of technical material, but maybe less then fifty thousands. Maybe not. I am not really sure how much. (I've had to come to the top of the things, I did less in practice.)
I am perfectly aware (now) that this topic, mentioned above, if it's not about unit tests, it remindes on agile. In both contexts I've readed not little about it. In one moment I've stucked in one place, sourounded by agile, model driven, test driven, even type directed, and many other things whose name I haven't learned, and I even didn't wanted to think my way through. Lots of times I found my self in that position, privately, and I would just pick my own thought and my own way, simply becaouse I know what I want, but this time I was kind of exposed, and that was interesting, becaouse like this it was kind of fixed position that I could think about. But I was enjoying not to be aware of it, kind of protected.
While I was reading, I usually didn't liked a lot what I am reading. I don't like the style of books made to look interesting. I don't know much about theory of learning except what I know. I personally don't like most of the things that I have readed. I like the most when books are dry, dull, boring, and plain, becaouse I know how to make it interesting to my self, and when people are doing their thing, I always have to loose so much time to decode what they have encoded in their writings. One of the things which I don't like a lot is how people imagine what is a beginners mind. I've lost so much time decrypting other peoples ideas about their public, to get out plain, dry, dull material that is interesting to me more than attitude about general public. For me, most of the material that I have read is dull becouse it's made to be interesting.
Accedentaly, I've been into programming for twenty four years. Accedentaly I never went before into pro direction. I have been completely avoiding all that, in one part becaouse of the respect towards profesionals, towards my self as a future profesional (like future object) so when I am reading as a beginner, it's not only that the way how things are represented to beginners is ultimatively annoying, but I even consider it very wrong, personaly, most of the times, becaouse in my experience of teaching someone else, I clearly saw that almost everyone is able to grasp to the top most complicated thing, and what intersting way of writing is trying to fill or do usually completely misses the reason why that space exists in the first place. If there is a person who is interested in something with his, or hers, whole heart, and has no backdoors, what is often happening, and even if it is not it is so easy to be open towards the people anyway, then dropping anything from the height, drawing other people's paths and trails, in my opinion, is usually wrong, and much better approach is, at least, to give out all, plainly, and show all the cards.
I'll give out an example. I was once in a three months course in a private school. I absolutely didn't needed anything like that, I took it as a three months cinema experience six hours per day. Anyway, when labs came, I started to feel again as a child. The first exercise was to make records about persons, name, surname, phone, save it in file, edit, and this. I've started to think. I want menu, cursor, prompt, commands, and texts separated from routines that use text, like help, or whatever, and I wanted it all to be easilly changed and upgraded into whatever else. I wanted that whatever I do, if I just touch the keyboard, to make it on such a way that I can reause it "forever". Then I've stucked with a Hooks and Anchors pattern, which I didn't know that it's called like that. I've came from some little c++ and assembler experience. The teacher forced me to accept that this what I do is called MVC, and that the way how I started thing is only usefull in a big projects. He bragged that he made an application of two milions of lines of code. He puttend an importance on single and double quotes. Till the rest of the course, he was the one that I was looking at. After that I have spent a little bit more than half a year to understand about patterns, oo stuff, and lot else, that enough much more than him to be able to understand what did he told me and more important why, to understand what was his problem. It was only than that I could come back and finish my own thought that he stopped intentionally.
Except agile and test driven and all else, the programmer can also spend time concentrated on fundamentals, and questioning fundamentals.
In the one post in a mentioned topic, it was said something about the "Real programmers". To me, personaly, it's simply to machoid thing to say but ockay. I am , personaly, quite sure that doing agile and test driven is not what makes a Real Programmer, but constantly questioning fundamentals. I would dare to say, at least my personal opinion is like that, that if someone is not clear with that, he or she [is] not a Real Programmer.
Questioning fundamentals does look silly. So many of nicest programmers and matematitians by default look silly. It only looks silly. There is one nice book that describes the life of one good mathematitian, it is called: "The man who loved only numbers".
Sure, technology is changing the programming, but not even only on the way that was described in the mentioned topic, and it is common sense that the mentioned topic didn't asked anything in the sense of "If You have a question, ask", but if I would want to "ask" about technical stuff, I would do that on place where this kind of things is happening, this was only about the humans, not about the machine, but humans who are using the machine. That was kind of intimate question, and I wouldn't, personaly dare to call that "asking", it was "apporaching", but yes, I have used the words "ask" and "test".
"The use of an IDE and the rapid edit/compile/debug cycle was one of the biggest improvements in programmer productivity in the history of computing. ".
(Ta ta ta ta ta ta. Pom pom pom. Truffle crash cimbal bo bo boom........................... )))
That just might be true. On the other hand really not at all. It would be kind of insulting to point out that the common sense tells that the biggest improvements in programmer productivity has nothing to do with the computer and espetially not in more details. Of course, from other point of view, like for example, to managers, this is absolutely true, as well as to news editors. What kind of person someone has to be to be enlighted by this?
Rapid edit/compile/debug so called cycle is a consequence of so many other things, so it would be also corect to say that those other things brought improvements in productivity of companies and people to whom that kind of productivity is important.
I personaly, am delaying to be productive as much as I can, becaouse being productive would drag me away from being productive in other sense, which is on a different way important to be compared with this productiviness, and it is not excluding one another. I am , maybe, silly in questioning things that I am questioning, but not only that I am not interested at all to step out and ask, and that I am not interested in answers at all, how much more silly than that is that actually, and that is very obviouse, I am wondering why I am interested at all in some point. It is not that I am taking it for granted that I am interested in whatever point, but I am wondering why I am interested in whatever point. I am wondering why I am wondering. How silly is that? It's called - reasoning.
Now, it's really not so far out to understand that the reasoning is more important than cycling. Even reasoning about cycling is more important than cycling. For productivity. Becaouse IDE's there. Human makes a difference. Humans even made IDE.
Trying to tell something to others is one thing, but trying to put into others peoples brains a reasoning is other thing.
It is not much of a question how the whole world does something, but really, it's not possible to switch copy someones personal motivation with what just one person has experineced that it works the best for him or her. Even if it is so, how really can someone come to that point that what works best for him or her is ultimatively the best and not possible to be better than that. And that's just personal issue. What does that personal issue has anything to do with the other person? Of course that there are similarities, but that is obviouse as much as the edit/compile/debug cycle is obviouse. It's like saying that pedaling a bike made the biggest improvement in speed of profesional bike competitors.
Teaching is important. Teachers are so important. They mean the world. But being in a position to teach someone else something is a strange position. Think about it, someone who knows a lot, compared to someone else is a megalodon. To use that kind of other peoples openess and attention towards more experienced recklessly is just that what it is. How can anyone be so sure so much in him or her self? Machoid attitudes are totally in opposite with advance. Ofcourse that when someone is so sure in him or her self, when someones whole life experience shows nothing else than what is good, it is exactely that thing that will be questioned. What else would posibly be questioned? The world is flat. We passed that point.
While reading many materials that I have read, so many things were similar like raising the question if the world is still flat and then showing the obviouse that it is not. Making it interesting is simply not a better way to do it.
I personally don't like my self when I show to someone "this is the way to do it". My personal style that I have tried to develop is like : "This is the way to do it, but hey, listen, don't take it for granted. If You have a better idea, just do it. Don't care too much for what it all means. Anyway, probably You will do it on that way. Simply don't stop thinking. Thinking can't be wrong. Thinking doesn't hurt anyone."
I will conclude this post with the sentence that one of the biggest techers said, Stella Adler, to everyone that have the feeling that they are enough experienced to speak to others about their own experiences:
"Don't use your conscious past. Use your creative imagination to create a past that belongs to your character. I don't want you to be stuck with your own life. It's too little."