Showing posts with label tutorials. Show all posts
Showing posts with label tutorials. Show all posts

Wednesday, 15 June 2016

My Reviews, CPU's and Books

Well folks you'll have no-doubt noticed I'm getting a fair few reviews out there, mainly through my YouTube channel, but also via Amazon where you'll find me fiddling and filming many items.

However, I wanted to just take a moment, to say; even though I get these items, if they are rubbish, I'll tell you.  I reserve all my own editorial rights, and though you can see something as cheap or free as a viable worthy thing, I'm still going to tell you if they fail miserable; simply because that's what people need to know.

You need to know if the items you're getting are utterly rubbish or not, whether it's worth spending money on, or even if it's cheap and decent, or just "good enough"; you know as a stop gap measure.

So expect many more things to float this way soon... I have an Android Tablet to review, a pretty nice looking Carry-All for gaming/software purposes; as someone on the move with many software facets, it'll be nice to have a bag with actual pockets for CD's or DVDs... and yes, I still use optical media!

I am also looking at filming a new-updated series about writing your own CPU, my previous posts here about it are perhaps my most viewed pieces, and the YouTube videos about them (which are silent) are pretty popular too.... But they're not perfect, they are as I say, Silent, they are perhaps incomplete, and to be honest they need updating to C++14.

There is also another reason for me to push out a new software series anyway, and that is that I'm constructing a book, yes me... An author!... I've been toying and trialling different styles for a technical book for sometime, a book for office use, to teach others to think and code as I do.

The reason being, we're hiring graduates, and they don't have the experience firstly, but now they're all very much younger than myself, and they don't have the grounding in computing.  When they're sat in front of an eight core, 3Ghz PC with 16GB of RAM, and they describe it as "slow", I just want to slap them around the back of the head with a rolled up news paper.

So, I started a document about how they should perhaps approach programming, gave some algorithms as to how they can see how something can be slow, but actually their machines are quite fast!... This was a success, and at least two of the people hired around me have stuck around, despite being very young graduates with very narrow fields of experience, they've become pretty good jobbing programmers.



I feel therefore I might make a more experience orientated programming book, many of them out there are tutorials, or "beginners", or even expert friendly, and many of them impart good knowledge, but I don't believe many expand or impart skills to the reader, and it's that skills bit which is difficult.


Difficult because in text, you're reduced to being very verbose, a picture speaks a thousand words, but a picture is not going to explain how to code all the time, so I'm struggling with word count and audience attention span at the moment, at least with my initial drafts.

Drafts?... Multiple?... Yes, because, like with my blog posts, I'm breaking this whole thing down in to different texts, a basic, a couple of middling and one expert tome, it what I'm aiming for at the moment.  Backed up with an initial FREE! Introduction set.  I also plan to perhaps have a free book about cross-platform work too, or the cross-platform development environment, and then a paid for book about actually doing cross-platform work.

The idea being, the reader can boot-strap into my text for free, then cherry pick what sections they may want.

I'd not want the whole series to cost more than a few pounds, we're not even talking tens of pounds, literally the whole lot for less then £9.99.  But each individual part I do want to charge for, a few pounds at a time, so to speak.

And why read my stuff?.. Well, if not to get a job with me, to at least feel more than just a programming, to take that step towards being a developer, to being better, and thinking better of the work you do.

Also to let me feel a little self-important... Right?... that's the best bit!... Be Xel trained today!

Thursday, 21 April 2016

C++: Boost Libraries, Code Documentation & Examples

I have a loving relationship with the Boost C++ libraries, but I have a real hate of their documentation, not just it's style, but the mistakes and fragmentation they build into it.

When I search for say "socket", I want it to take me to boost::asio::tcp::ip::socket.  But instead it takes me on a run around, and when I finally get to boost::asio::tcp::ip::socket the examples and namespace being used is incomplete, it assumes a bunch of things, and you get told to look in tcp::ip::socket.

This is fine, if your reader knows to assume boost::asio as well, but if you're new to the whole boost project, you don't know sockets live in asio, you might be looking for boost::net, or boost::networking, or boost::network or just boost::tcp.  And you're stuck, lost, you have to leave the boost documentation search and go to google.

To fundamentally have to leave the documentation of an actual project website, and use a third party in this way is fundamentally telling you your documentation is flawed.

Then, there are mistakes in the documentation, this is annoying, but when the mistakes are in the examples given it's unforgivable, you're basically giving your users the finger, because not only are you teasing them with an example, but when it doesn't work they are again cast out into the wilds of the internet.

Case in point, again the socket, it's example code shows it as "soocket".  A typo yes, but it tells me two things, first of all, the code was not proof read, and second; and perhaps most importantly; the examples are not from working code, they've never been run, because it's not soocket, and the compiler would instantly tell anyone trying to run that code soocket is invalid.  Examples SHOULD ALWAYS BE LIFTED FROM A WORKING EXAMPLE!