Win a copy of Five Lines of Code this week in the OO, Patterns, UML and Refactoring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

Real-World Software Development: How to self-study to become a developer?

 
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear  Urma & Mr. Warburton,
Thank you for making time for us. I am looking forward to reading your book. I am not sure if self-study is something that you cover in the book. Do you have any recommendations for doing this? I have been at it for while, and I must say I enjoy it and have made great progress. I feel while at the surface having an expert team guide your learning, i.e. the traditional University Training, is a plus, but I have seen some disadvantages to that also. My question is what are some activities, resources, and strategies that you would recommend? If you do believe in self-study that is. I found reading a book about learning helped me a lot. I also benefited from kind of exploring different resources and find what worked for me. The other item was learning that creating applications are easier than learning to solve problems, and I located resources for teaching me the later and focused on it.
Regards-
Samuel
 
Sheriff
Posts: 15733
264
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Sam Muller wrote:an expert team guide your learning, i.e. the traditional University Training, is a plus, but I have seen some disadvantages to that also.


My $0.02 about "traditional University training" with regard to real-world programming is not very flattering in general, I'm afraid. While there are some universities that are making strides in the right direction, many others still teach with the same tired, old, outdated material they were using five or ten years ago or even longer. In many respects, the gaps between academia and industry keep growing and I don't see much being done to bridge those gaps.

Expect to learn fundamentals in the Uni, just like you would at boot camp if you were in the military. But just as in combat, the real-world stuff has to be learned in, well, the real world, and from people who have real-world experience. Sadly, many of our colleagues in academia are sorely out of touch. Don't get me wrong though, that's just part of the problem. The way courses and degree programs are structured also presents a challenge. I think internships, apprentice programs, and co-ops provide great opportunities for students to get out of the classroom and into a more real-world setting so if you get a chance to do one, take it.

As for the book, from what I've seen it does touch on many concerns that you'll want to know how to deal with in real-world S/W development.
 
Author
Posts: 31
12
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Sam,

Sam Muller wrote:Dear  Urma & Mr. Warburton,
Thank you for making time for us. I am looking forward to reading your book. I am not sure if self-study is something that you cover in the book. Do you have any recommendations for doing this? I have been at it for while, and I must say I enjoy it and have made great progress. I feel while at the surface having an expert team guide your learning, i.e. the traditional University Training, is a plus, but I have seen some disadvantages to that also. My question is what are some activities, resources, and strategies that you would recommend? If you do believe in self-study that is. I found reading a book about learning helped me a lot. I also benefited from kind of exploring different resources and find what worked for me. The other item was learning that creating applications are easier than learning to solve problems, and I located resources for teaching me the later and focused on it.
Regards-
Samuel



Thanks for your question. We do offer example projects in the book that you can code along with yourself, and each chapter has a short section at the end (called "Iterating on you") with open ended exercises that enable you take the concepts from the book further and self study at home. Beyond that I find Katas to be useful for self-study - exercises that you can perform and repeat in order to solve problems, eg: https://github.com/ardalis/kata-catalog. I've actually found building small open source projects are a good way to explore concepts that you want to take further.

regards,

 Richard
 
Ranch Hand
Posts: 143
5
IntelliJ IDE Eclipse IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Junilu Lacar wrote:

Sam Muller wrote:an expert team guide your learning, i.e. the traditional University Training, is a plus, but I have seen some disadvantages to that also.


My $0.02 about "traditional University training" with regard to real-world programming is not very flattering in general, I'm afraid...



+1 for the comment about university. When it comes to practical skills (source control, unit testing, mocking etc.), chances are that the average college student will be at the same level as an Ivy league student. Not surprising when you look at the colleges syllabus.

I wish we had trade schools for software engineering. It could be a cross between a traditional university and a coding boot camp. It would have the bare minimum needed for the average software development job, i.e. NOT developing compilers, medical software etc. But, developing websites, backed components etc. It would not be too long and full of useless stuff like a 4 year degree, but it would not be too short and superficial like the average 3 month boot camp.

Anyway, coming back to this book. I have tried it and it does not fit my style of learning (video courses). I wonder how a book with about 200 pages could teach me about real world software development or at least give me a clue to get started. Real world dev does not seem like a topic that can be covered in sufficient depth in just 200 pages. It feels more like a multi volume book of several hundred pages or a 50 hour video course. I wonder if the book is a demo for paid training courses.

Suggestion to authors - Please consider making a video course for this book and put it on oreilly, lynda or udemy. It would be nice to have another course after this book which would be more detailed. You could start a kick starter or indiegogo campaign to get the funds for it and also see the interest level. That way you also get to cut out big, bureaucratic publishers.
 
Marshal
Posts: 69740
277
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Tom Joe wrote:. . . long and full of useless stuff like a 4 year degree . . .

What on earth makes you think that “stuff“ is “useless”? The whole iea of a degree course is not to teach the students to progam, but to teach them to think. It is useful to understand the theory of programming, algorithms, etc.; that sort of information will come out of somebody when it is most needed, and years after they thought they had forgotten it.
At least that is if they are taught well. Junilu will tell you he finds lots of threads on BJ where he thinks the poster is being taught badly. That is if I don't find the bad teaching first. And there is a lot of it. The fact that many people teach University courses badly doesn't mean University courses are bad.

I shall be back later
 
Campbell Ritchie
Marshal
Posts: 69740
277
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Junilu Lacar wrote:. . . some universities . . . many others still teach with the same tired, old, outdated material they were using five or ten years ago . . . .

If only some were only five years out of date. Then we would have people able to write Java® λs and Streams code.
There are things like principals of programming, which don't change at all quickly. And programming paradigms only change slightly. But if you are teaching Java®, you don't want to let people use Vector or StringTokenizer.

Back later.
 
Junilu Lacar
Sheriff
Posts: 15733
264
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You know what would be great? If universities started making books like this the basis for grading of their senior-year students' capstone project. It would be even better if they could do an Intro to real-world programming course to go over the basic theory and then have the students spend another whole term applying the concepts to a group capstone project.

They could have a few milestones or "preproduction" releases to get feedback like a pre mid-term, mid-term, and a post mid-term check, and then a final "production ready" release two weeks before finals. The final grade would include usage and outcome data gathered through actual use by other students in their course or university.

There are so many things you could do as an educator to make your course material more relevant to real-world experiences students will have when they graduate.
 
Junilu Lacar
Sheriff
Posts: 15733
264
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One site I've been looking at recently is https://hyperskill.org -- it's basically the JetBrains Academy. A bit tedious for experienced developers because you still have to go through all the foundational sections to unlock units but for beginners I think it looks a great way to learn. I'm going through the Kotlin curriculum right now, actually.
 
Campbell Ritchie
Marshal
Posts: 69740
277
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Tom Joe wrote:. . . this book. I have tried it and it does not fit my style of learning (video courses). I wonder how a book with about 200 pages could teach me about real world software development . . .

It is a, maybe unfortunate, truth that different people have different learning types, and therefore some people will find resource X really useful and others will find it really useless.

One man's meat is another man's poison.

You are obviously the person for whom it is  “poison”.
Those of use who are older didn't have the luxury of getting video courses; even fifteen years ago learning meant lectures or books. Maybe a video course would be appropriate, but one of the authors said he was too busy to write such a course.

Also, don't try to learn a practical subject from a book. It matters little whether the book has 200 pages or 2000 pages. You need practical experience, and the book is only a starting point for your learning.

big, bureaucratic publishers.

I think that is unfair to the publishers. They employ lots of people to maintain the quality of the books, etc. You can see the difference of you look at some of the offerings from publis‑your‑own websites. Publishers make sure to edit books for accuracy and readability, as well as deciding which books to publish at all. Maybe true academic publishing is different, where most of the work is done by University staff and researchers who aren't paid for their work, can be called bureaucratic, but that isn't a fair description of the rest of them.
 
Ranch Hand
Posts: 227
1
Python Ruby Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you have figured out the fundamental aspects of the language , the best way to do is to read through
books like this one and practice.

One of the other aspects of becoming a self taught programmer is that not sure this was already discuss on
this thread there are tons good of open source projects available with some good documentation.
look through those projects  and read through the source code , you can learn a lot from it.

50 Top Java Projects on GIT Hub




 
Sheriff
Posts: 7635
522
Mac OS X VI Editor BSD Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
And there is yet another way of looking to whether academia is outdated or there is a problem somewhere else.

I remember when I was finishing secondary school, they used to say, in university nobody will hold your hand and tell you what and how to do things - you'll have to find yourself, you'll be given just enough information to start and you'll have to lead things your way.

So from my own experience, fairly recent I should say so, it really depends a lot on student, I want to believe that academia isn't as bad as it may look. In BSc courses really what you get are the fundaments, needed ones, and they don't change much over the time I think. They are still applicable now, just maybe not that visible as wrapped to some more fashioned name, terminology or framework, similar...

Doing an MSc course really gave me an opportunity to learn the mentioned Git tool, however, it wasn't a main target, it was just an auxiliary tool to submit the courseworks, and we had to learn that during self-study time (but I knew it already), and it is fair. Would be weird to expect there would be a course on Git only.

We even got students accounts on GCP (Google Cloud Platform) and AWS (Amazon Web Services) and got a chance to implement some cloud based applications, work with distributed data processing pipelines, spin up virtual machines, kubernetes clusters along with docker containers - that's what hot in industry now.

My university isn't top 10, 20 or 50, but I'm really glad with the knowledge I got. And I equally learn a lot at work. But, same as I am happy in academia course, there are tons of students who aren't, and they say totally opposite - but I'm a bit more sceptical about those. When some of us had a lectures on friday evening (yes, not allways fun), some of us (actually them) had a real fun at university's pub (which is also cool from time to time) - but then you shouldn't expect much from this class.

One thing I really noticed during all those years, which seem to fall to what guys were mentioning here, that I learned much more from the teachers who had an experience in industry, rather from those who were pure academics only, but that also was with some exceptions.

I shall probably say that I was talking about the university in United Kingdom, England in particular. Other countries, regions may have different quality, but I personally doubted it would be very very different.

Some time ago discussed with my friend about best recent decisions we've made. To go back to study was my top 1.
 
Pay attention! Tiny ad!
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
    Bookmark Topic Watch Topic
  • New Topic