Categories
Book Review

Hello, Startup – Book Review

Hello, Startup: A Programmer's Guide to Building Product, Technologies, and Teams – By Yevgeniy Brikman – is a great view into just how (and if!) you should create your startup or join one.

The coverage goes to some weird but arguably good places along the way (for example, talking about clean code), but even when it does, it is still good advice.

What the book covers is:

  • Why Startups – why would you want to create a startup, or work on one – and very importantly, why you might want not to.
  • How to come with ideas, covering the classics such as pain points (which has been advice on shareware forums for literally decades), idea journals, the now common “your idea is not worth much compared to execution” and the very important how to validate your idea – as your idea is pretty likely to not be as good as you think and you probably want to find out now, not after years of development.
  • Design, including the classics – personas, usability testing, visual design.
  • Picking a tech stack – surprisingly tech agnostic, and full of interesting suggestions on how to decide what tech to use. Pick mature ones instead of the flavor of the month. and it is not as important as it seems.
  • Clean Code – already mentioned as the relatively weird chapter. The advice is good, and cover the general stuff you'd see on Code Complete and The Pragmatic Programmer, such as good practices, refactoring, etc.
  • Scalability – review of several practices that you should probably follow – such as Test-Driven Development, design reviews and code reviews.
  • Software Delivery – again, several good practices – source control, code reviews, continuous integration and automated deployment.
  • Startup culture – how to define your companies culture, and what it means. Even if you don't read the book, check out the Netflix culture slide deck – it is pretty long but well worth reading.
  • Getting a job at a Startup/Hiring for your startup – interviews, asking good questions, and the best practices in the area.

The book has a ton of memorable quotes from other material – I didn't have a chance to go through it for my notes it, but I'll probably come back here and update this post when I do.

There are also plenty of resources on the book site.

Overall, I strongly recommend anyone interested in creating a startup to read this book. It was pretty great.

Related books/courses:

Adaptive Code in C#  – great review of good development practices and keeping your code flexible, although some examples are a little exaggerated

The Pragmatic Programmer – great, goes into the specific programming practices

App Making – more specific to apps, but also covers how to get ideas for apps, design advice and how to test your ideas

 

Categories
Book Review

Adaptive Code in C# – Book Review

I have just finished reading Adaptive Code via C#: Agile coding with design patterns and SOLID principles – by Gary McLean Hall.

It covers ways and patterns to get more flexibility out of your code – so it can adapt better with time and requirement changes, have interchangeable components instead of awful dependencies, and so that it can actually be unit tested properly.

It also has a chapter on Scrum (the development methodology), which isn't that relevant to the theme, but still sort of applies as a general practice which allows for your software to adaptable.

It ends with a ASP.NET MVC example, which I also found useful.

I've read this as an e-book on Safari Books Online's iPad app, and the code layout proved problematic on many occasions (the end of no-so-long lines would be clipped). In the very end of the book (yeah, that is a really useful spot) there is a warning that suggests reading the book in landscape mode with the smaller font available – which I would say is pretty lame. (There is a graphical link, but the listing sometimes wasn't the exact version of the main text, and would sometimes return to beginning of the chapter instead of the right spot)  I have seen similar things in other books in Safari, so I don't know who is to blame for the problem, but still annoying.

Overall, very nice, a quite pleasant read and very instructive.

Categories
Product Review

Become a SpeedDemon: Productivity Tricks to Have More Time – Course Review

Become a SpeedDemon: Productivity Tricks to Have More Time is a course on productivity by Jonathan Levi – author of Become a Superlearner (a much longer and better course, BTW).

It is nicely short and to the point, and there are some useful tips there – such as:

– prepare before starting a task, so that you don't have to stop in the middle to look for what you need

– batch similar tasks together

– keep SMART priorities (also featured on the very nice and free Learning to Learn course)

– create artificial deadlines (such as doing a task before your next meeting) so you don't spend time on pointless details.

– use the pomodoro technique (also featured on the very nice and free Learning to Learn course)

– keep a list of short tasks for when you have a few free minutes – so that you don't have to think about it or just kill time (review flash cards, view a lecture on an online course, etc)

– some sleep tips (I had seen most of these, but the one about using smart led bulbs was new to me)

– general outsourcing advice

– try to avoid excessive decisions – can cause ego depletion.

The format is the usual – video with a extra PDF and many links. Udemy is pretty good overall, and you can speed up the videos and there are apps for most platforms. No closed captions on this course, however.

Conclusion

Somewhat interesting, but nowhere near the asking price – US$199. You should be able to find a discount if you look around or on some Udemy sale – at US$15 it is useful enough and I can recommend it.

Categories
Product Review

Enterprise WPF with XAML and C# from Scratch – Course Review

Just finished Enterprise WPF with XAML and C# from Scratch, by Jesse Liberty, in PluralSight.

It covers the basic of XAML with C# – panels and controls, data binding, animation, styles and templates.

The course is very short (less than 3 hours for me, while taking notes)  and to the point. You won't get in depth knowledge on the subject, but you will learn all the basics you need to get started quickly.

On a personal note, this is the second course I take with Jesse Liberty – the first course was Object-Oriented Analysis, with ZD University, back in 1998 – which was also the first course I took online.

Categories
Book Review

The Pragmatic Programmer – Book Review

The Pragmatic Programmer – by David Thomas is a bit of a classic (1999).

I read it way back, when it was still somewhat new, and decided to re-read when I subscribed to SafariBooksOnline (my review of the service).

It is still pretty good still after all those years. While I do use most of the practices they suggest on much of my work, there were plenty of useful tips and reminders.

And if you haven't read it, it is very much worth for the dozens of practices you might not be using yet. It does feel a little dated, and many of the practices that were uncommon at the time are very common today. Some bits are almost funny, such as the lack of Refactoring tools outside Smalltalk, or the suggestion of using USENET private groups for communication, but these are the exception.

Overall, strongly recommended for anyone that want to be a better programmer.

Categories
Product Review

Safari Books Online – Review

Recently I got a notification from O'Reilly on a 50% off sale on SafariBooksOnline.com (Safari Books Online). I haven't really paid any attention to them in years, but now that they supported iPad/Android apps it seemed interesting. And given how much I spend on tech book and courses every year, US$199 seemed about right, so I signed up.

Selection

The book selection seems great to me. There are technical books and courses on pretty much every subject relevant to me, plus whole conferences – which can each cost about a year of the site would.

One of the biggest advantages of the service is quickly making a search for a topic you need now and getting good, detailed references you can see now, inside any book or video. No more buying a book that supposedly covers what you need just to find out it is just a vague chapter in the middle of it!

Web

Accessing via the Web is the best for books. Highlights are easy, can private or public and include notes. Now, for videos I really miss having speed selection – which is very, very common these days. I still haven't seem a single video of them with closed captions yet.

One thing I really miss is reviews for books and courses. Even if they are included in the price, the time I spend on them is not free. So if I want to I need to go elsewhere to learn if my time is well spent with this book/video.

iPad App

I have used the iPad app quite a bit, as it is much more comfortable than sitting at the computer. The app works well overall, looks good, is very responsive and allows downloading of books and videos. I read complaints of problems with some books, but I haven't noticed anything yet. Going back from a link on a book can be a little jarring as it speeds up from the start of the chapter to where you were when clicking the link, but that is not too bad.

You can highlight passages (which I do a lot in preparation for later doing notes – which is strongly recommended on learning research). You can't add notes, though.

I had a problem with highlights disappearing – which might be related to using the Android app on the same book or not, I don't know. Either way, very annoying.

They have a nice chat built-in in the app. I have reported the highlights problem yesterday, but no response yet – should be expected as it is the weekend. I'll update this later if I get an answer.

Video is OK but has the same problem as the web version – you can't speed up/slow down video and no closed captions.

Update (30/Dec/2015): I have contacted support many times. Most times, I don't even get an answer. The iPad app is still pretty buggy. About 5 times it deleted all the books I've downloaded, including in the latest iOS update. This time one of the largest books just lost all my highlights, and won't re-sync them again. Luckily the highlights can still be accessed from the web version.

One of their most annoying bugs – highlights sometimes highlighted the WHOLE CHAPTER – seems to have been fixed.

Android App

I have only tested the Android app briefly for a simple reason – it doesn't even have highlights! This makes it mostly unusable to me.

Update (May/2016): They have added highlights to Android! I'm a little impressed that I updated my review on Google Play to mention the highlights and complain about the lack of feedback when loading the highlights (5 minutes for a large book I'm halfway through), and they answered a few minutes later.

Tutorials

There is a new section on the site with tutorials. So far what I have seen is just links to videos and sections of books that you already have access to. I think it is a nice idea on getting better use of the collection by curated topics. Apparently, this will cost US$15 per month or US$35 per course – in addition to the normal price.

This price might be reasonable or not, depending on where they go with it. They have a survey which include options such as exercises and assessments, which might make it reasonable, specially if they do something like Pluralsight with PDF certificates you can get after each tutorial.

Update (May/2016): I think they gave up on charging for the tutorials – which is a big win for all their users.

Windows App

For those in the go, some way to deal with being off-line and having access to the content would certainly be nice. But this still has only “Coming Soon” on their site.

Conclusion

Overall I like Safari Books Online, but mostly at the discounted price I got. At full price it is reasonable only if you really view conferences or video classes, otherwise it is much cheaper to just get the books. The apps could certainly be better, but I understand this new version of the service is relatively new, so I hope they improve with time.

Update (May/2016) – The apps have improved with time and are much better now.

Update (November/2017) – It is interesting to note that for the first time, a book I read was removed. I wouldn't mind so much, but I was still going through the highlights I made to make my notes. Thankfully, although it disappeared online I still had a downloaded copy on my tablet.

Something to keep in mind for those that add notes and highlights to books. You might want to keep your notes somewhere else.

The apps are better. In particular, selecting on Android is much better. There are still times when it doesn't download all the highlights, though.

 

Categories
Product Review

Learning How To Learn Course Review

Learning How to Learn: Powerful Mental Tools to Help You Master Tough Subjects is an excellent free course on Coursera.org that shows very useful techniques on how to learn more, faster.

The course is full of ideas based on actual research (instead of guesswork, which unfortunately is way too common in education) on the best ways to study and learn.

It covers many areas, including the most effective ways to study and retain material in many areas, avoinding procrastination, improving your memory and more.

I spent about 8 hours with the course, including some of the supplementary readings.

Overall, strongly recommended, and full of valuable tips you can use your whole life.

Categories
Product Review

Software Security Course – Course Review

I have recently finished the Software Security course by Michael Hicks, from the Maryland Cybersecurity center.

I felt the course was interesting and useful. It covered:

– Old school buffer overflows/format string attacks and defenses

– Web attacks such as SQL injection, Cross-site Scripting, Cross-site request forgery and Session hijacking.

– Automated Tools – code review, static analysis, symbolic execution

– Penetration Testing

Classes are in a video format. There are projects (nicely presented in a Linux VM – I didn't do these), several suggested readings and quizzes.

Most of the classes have closed captions, and Coursera allows to speed up videos, too – even in their iOS/Android apps.

The course took me about 14 hours, including the interviews (which are considered optional, and are somewhat interesting).

Overall, very useful, specially for newer programmers. I'm sure if courses like this were required for most programmers, the landscape on cybersecurity today would be very different.

A lot of the general safety practices (defensive programming, etc) can be found in the still very good Code Complete 2 – which I recommend reading anyway if you are a programmer.

Categories
Article

Windows 10 and STG FolderPrint Plus

I have received questions from users about STG FolderPrint Plus and Windows 10, so I downloaded a beta of Windows 10 from Microsoft and tried it.

Everything seems to be fine. You can see a screenshot below. Personally I prefer the Windows 7 UI, though 🙂

 

STG FolderPrint Plus running on Windows 10

Categories
Product Review

LinkedIn Strategy: Optimize Your Profile – Course Review

LinkedIn Strategy: Optimize Your Profile is a great course in Pluralsight by Jason Alba that covers a lot of ways in which you can make your LinkedIn profile more effective – and also some suggestions on how to improve your networking in the site.

There is plenty covered, starting with your picture, professional headline, summary and going into how to use rich media, how to get (and give) recommendations and more.

A particularly interesting tidbit is how to re-use recommendation lines on your summary, experiences, sites and more.

Conclusion

Overall, I found the course to be very useful and full of interesting techniques and suggestions. I think that if you use his ideas on your profile, it will be much better and more useful. I definitely need to spend some more time on mine.

Recommended, specially if you already have a Pluralsight subscription.