Below are some of the things that people have said about Python Morsels.
All of the below feedback is genuine and I believe it is all honest (I don't think any of these folks were flattering or bribing me). 😉 Some of the feedback below is solicited (via a feedback form), but none of it is compensated.
When evaluating whether Python Morsels is for you, rather than looking for positivity/negativity consider whether the below descriptions of Python Morsels sound like the kind of thing that might suit your needs well.
I'm 17 exercises in, and I am still absolutely loving Python Morsels. The way it's structured with the base problems, bonus problems, the links to forum posts as hints, and the way the Wednesday solution walks you through the thought process and iterates over different solutions is just perfect. The difficulty level so far has been hitting a nice sweet spot, where I've been able to solve the base and sometimes a few bonus steps on my own, and the rest with your hint links, and then finally when I get the solution it validates some of my choices and thought process, and teaches me some different and usually more elegant or clever ways to approach the problems.
I love these. They are short and simple enough that I can do them in between putting my daughters to bed but challenging enough that I learn something new almost every time. Of course there is always a long - probably unpythonic - way to solve most problems, but I push myself, not to make it short, but to make it readable, clear, and pythonic. It's great to be able to try different stuff out that I may not use every day because I'm just not comfortable with it. I usually get more out of the bonuses than the main exercise, but I absolutely LOVE having the automated tests.
Overall I have to admit that I'm blown away by the usefulness of your weekly exercises. There is nothing academic about them and they seem to be applicable to many situations. In addition, the exercises are simple enough to follow the basic concepts while the bonus sections provide depth to keep me busy for the week. Thanks again for your great training!
BY FAR the best learning materials I've ever found during my short 3 year Python experience
Python Morsels has given me a clear understanding of how to approach core concepts of programming in Python. It's the perfect mix of familiarity and new ideas as Trey's explanations are both methodical and engaging.
Three of our developers are doing Python Morsels. My biggest concern when signing up for Morsels was the time-involvement. Would it not cost too much time from my development team? The purchase was definitely worth it. The challenges provided by Python Morsels are practical and relevant for the working software developer. The automated tests assure you're not only solving a problem, but know that it works. The solution e-mail provides a very thorough reasoning behind the chosen implementations. Also the weekly challenges are fun! I would definitely recommend Python Morsels to others. It's a lot of fun, and includes very practical information. Thank you for providing us with the weekly Morsels, Trey. They're well worth it.
The tips are always so great, they are like that perfect mentor that just gives you these subtle hints on what parts you probably want to refactor.
Thanks for the great exercise this week. I really appreciate the thought that goes into defining and testing these exercises. I was happy enough when I finished the basic challenge (still trying to wrap my head around iterators). But when I pulled off both challenges and managed to edit my code down to 7 lines, I got pretty excited. I seem to learn more each week for the couple of hours that I spend on these than the rest of the week combined.
Thank you for putting all this together. As a hobbyist coder, your lessons are instrumental to me staying engaged and progressing in my learning. So it is truly appreciated.
I've checked others python learning oriented websites and I couldn't find yet anyone better than yours. It is much easier to get involved in the process of learning through challenging exercises than reading or repeating some formulas.
I've finally got a job!
I just wanted to thank you one more time for Python Morsels! It gave me that fluency I really searched for and turned my thinking process into what I can only call a truly pythonic style, and after I went through tens of coding interviews over the last two months I can clearly state it was possible because of Python Morsels.
During my study of Python, I used various programming challenge sites. I came across Python Morsels via the Python package on the Humble Bundle. I can say for sure that this is the best challenge site I have ever come across, not only in terms of the challenges but also in the form of additional material support on your blog. There are many websites with similar programming challenges nowadays, but yours is certainly distinguished by the fact that the tasks are really thought out, created by a person with a passion for what he does. You are great at what you do.
I got this week's exercise and completed the code quickly. It worked, passed all the tests. Seemed too trivial. I knew there had to be a python angle... but what? I tried to do it cleanly, using slicing and splitting and string formatting... but refactoring to achieve sum of comprehension never occurred to me. Your write-up always turns on new light bulbs and makes me smile. Thank you!
So far, I've been happy with the service. I like the way the whole thing works overall. Each week's base problem starts out with simpler cases, and the bonuses add some complexity. The solutions often describe multiple ways of attacking the problem, the different imported modules that could be useful, and explain why certain approaches are better than others. It's a more complete way of practicing programming since there are solutions with explanations.
I've tried a few coding practice sites and use at least one fairly regularly, but all they really offer are problems. There are sometimes discussions and comments on the problems which can provide insight or hints, but you don't get the kind of suggested solution your system provides. In at least some of these sites, I can see other people's solutions, but that leaves me to figure them out on my own. That isn't always easy to do, especially if people are code-golfing for a high place on the leader board or using something I've never seen before. I can do more problems than one a week on such sites, which can be good, but without the sort of solutions and explanations your site provides, it's harder to get as much out of them.
Also, these sites have various things I don't always like. Some require optimized solutions, to run quickly even on very large inputs; I tend to just want something that works though, and failing tests because my code takes too long always annoys me. Some have problems that seem to me to be less about programming and more about finding some kind of trick (e.g., a mathematical shortcut) for solving the problem. I don't really want to spend a lot of time just figuring out what I need to do though. I tend to prefer cases where I can basically see a solution, code it, and if it's not working (or takes too long), I can then attempt to find an alternative or optimize the code somehow. Your problems are pretty clear in what needs to be done, so I can usually start coding something fairly quickly. Sometimes bonuses require a bit of reworking, but I think that's OK, since they add complexity to the problem that wasn't there before, and you may need to do some things differently in a more complex case. (An example of these is the tendency of problems to return, say, a list in the base but an iterator in the bonuses.)
I'm not sure exactly how much I get out of the service, to be honest. The practice is always good, since it makes me write some code regularly (and I tend to do more maintenance than development at work). As with a lot of training-type things I do, I take the approach that just having exposure is useful. Unless I use something regularly after learning it, it's probably not going to stick. But maybe in the future if a related thing comes up, it will ring some bells and I'll remember where I heard or read something related before, leading me back to my notes, saved code, etc. to go find more information that I can use. I do think that I get that sort of exposure with Python Morsels, seeing modules I might not have heard of -- I've only been using Python for about 4 years now at work -- or coding approaches and reasons for them -- I'm more of a scientist/engineer who sometimes codes than a real, trained programmer -- all of which helps me learn a bit more about the language I'm using now. If I didn't think it was going to be useful in some way, I would have stopped after my 6 month Humble Bundle redemption code was up, but I kept it going because I do think it's valuable.
Footnote: this testimonial is my own opinion and does not represent my employer or their clients.
The only challenging factor for me was money because at that time I was struggling to get a job. I am coding regularly. I was spending hours on it, even for simple tasks. While solving morsels exercises, I realize often more things, and hence my search becomes more and more exhaustive and more productive, and that my friends, has increased my knowledge and learning. Most of it is difficult for me as I am not from any programming background, so in a way, I am learning things from very scratch. For me, every challenge is unique in a way. Whenever I solve a problem, It's completely new, hence completing it from start to end gives me a lot of confidence. With Python Morsels, you become disciplined, aggressive, and your confidence level goes up. I would recommend this because there is definitely something for everyone. I have never seen in my real life experience, the problems which I have solved, but I think it's worth a shot. It is a great thing, at least it was a boon to me.
Just wanted to send you a thank you note. I've been working with data in Python for about two years now, but not having come from a computer science or engineering background, I sorely missed out on many of the fundamentals of Python.
Having enough time under my belt to know what I don't know, it has been such a treat to be able to start filling in those gaps by working through your problems.
Your problems are perfectly worded, clearly defined, you give enough hints as to not waste time, but not so much that you give it away. They are incredible and I'm so glad that I stumbled across your site.
I've gotten all three bonuses on the last two I've submitted and am seeing/feeling lots of progress already. Just wanted to send you a thank you for what you do! It is greatly appreciated.
I was just finishing off catching up on some morsels when the second month's bill came in. Got to admit, when I signed up I was thinking "I'm not sure if this is worth $4 a week..." When I saw the bill (and I had literally just run the tests and got the lovely "OK"). My first thought was "yeah, I'm glad I'm spending this $4 a week." So, thanks!
For me, there were two obstacles. First, the fee of $16/mo. I knew it was not a substantial amount to me, but still I had to make a mindful commitment rather than some mindless spending. It was a mental obstacle I had to overcome. Second, I was concerned that the morsels would involve only basic Python and so my Python skills would not be pushed beyond what I have now. But now after more than 3 months of Python Morsels, I genuinely feel an improvement. The purchase was worth it down to every cent. Not only in terms of the money, but also in terms of the time put in towards working on the weekly morsels. It's a form of weekly deliberate practice to improve my Python skills. It makes me think about the underlying structure of the Python language. I realized that there are multiple ways a problem can be solved using Python. Also I find the unittests provided by Trey very helpful.
I would recommend Python Morsels to anyone looking to improve their Python skills. I have learned and actually implemented new Python skills after following Python Morsels compared to learning through a tutorial. Unlike following through a tutorial on a specific Python topic or feature, the weekly problem format follows an 'active learning' approach where one is encouraged to think in a Pythonic way. Moreover the solutions provided by Trey exhibits a multitude of ways in which the particular problem could be solved. I find reading it highly insightful going through Trey's solutions where he presents both why and how a particular solution works.
I wasn't sure this was the sort of thing I wanted to get involved in. I've done just one exercise so far, and I have to say it was much better than I had thought it'd be. It was a nice amount of code - enough to need some thought, not too much to get over involved. At first I'd thought the exercise would be some "cute" problem with little real-world use, but it turned out to be a very useful thing. I'm an old retired guy learning Python just for the fun of it, so the primary benefit to me is that it forces me to really write some code on a regular basis. Following book exercises are usually too canned. I also like that Trey proposes various solution hints in mid-week. Also, it's good to compare my solution with an expert. My solution may work, but it doesn't always really do it "the Python way". I would recommend PM to anyone that wants to get some practice coding in Python. I do wish there was a forum everyone could post their code. It's good to see Trey's solution, but it would be even better to see a variety of solutions.
If you're on the fence about whether you should try Python Morsels, keep in mind that the first month is free and that I offer a money back guarantee.