Wednesday, July 28, 2010

20 hours lost

LyX is out, Adobe FrameMaker 9 is in. I spent 20 hours over three days banging my head against LyX for a measly 12 pages of results. I was really loving it right up until I had to start putting in a lot of screenshots and diagrams. I spent more time screwing with the placement of the images than I did writing the content. It took me an hour to figure out how to center an image (you don't center the IMAGE, you center the PARAGRAPH the image is in).

I'm familiar with Adobe products (Photoshop, InDesign, Illustrator) so hopefully the learning curve won't be as steep and I'll be able to spend more time writing content then fighting placement and typesetting.

Uh.... wasn't I supposed to be learning something else here..?

Monday, July 26, 2010

99 problems

I've been meaning to update this for a while. I haven't looked at my C books for a few days. My brain can only handle a few really new technical problem at a time, and lately my big problem has been figuring out how to write a large user manual.

Google fails (or maybe I'm not doing it right) when you try to search for software that is designed for writing user manuals. What you get as results are manuals for software!

I thought about using Office, but after ~100 pages things get unwieldy. I tried using LyX (a LaTeX front-end) but it doesn't really get useful until you have many sections and adding images is..... well lets just say there is an entire "embedded objects" manual that frightens me. I started researching OpenOffice and I found it has a few clever tools for handling large documents. This might do for now, but I need to write a good bit of content to see if I can work with it.

My greatest obstacle is that my subject matter demands a substantial amount of lists and sections. LyX is fantastic for this, because it automatically handles renumbering things if I add in sections or items to a list. Word, as everyone knows, does this up to a point and then magically breaks after you get a few pages in. OpenOffice MIGHT do this - I need to explore the "Master Document" concept a bit more.

The second greatest obstacle is fluidity in style. I need to (for example) be able to change the font for every subject heading throughout the document without having to go to every single one and do it manually. LyX has this handled, Word MIGHT do this but probably not, and OpenOffice is meta-oriented enough that it would probably do this if I dig through the documentation enough.

I spent most of Sunday beating my head over the LyX introduction manual and tutorial and didn't make much headway. My goal over the weekend was to convert a quick-start guide written in Word to a different authoring program as a proof-of-concept, and that didn't happen. I haven't felt this defeated trying to learn a piece of software in a long time - maybe ever. Blender wasn't this hard. REAPER wasn't even this hard!

There is a really good section on how computers deal with fractions, signed integers, and floating numbers in the CarlH (Highercomputingforeveryone) C lessons. I did read through that on Friday. I'll count it as progress even though it's more of a reminder of stuff I learned five years ago.

Wednesday, July 21, 2010

data set

I will soon get to a point where I need data to work with. See, most of the programs expect input of some kind (like a bunch of sentences to sort or count), but that's getting really annoying to type that in every time I want to test the program. I wonder if there is a way to have a text file at hand to pipe into the program. I might have to "cheat" and build in something to read the file (before I'm supposed to properly learn it) in the simple programs first.

I just hate having to use something over my head before I'm ready to use it. Maybe I'm being too strict. My "don't use it unless you really, really understand it" rule might be inhibiting me.

Tuesday, July 20, 2010

what?

'a' is 97, but "a" is 36.

hunch confirmed

I guessed right.

Ok, so:

#include
#include
int main()
{
char c;
c = 'a';
printf("Hello %d\n",c);
return 0;
}

outputs "Hello 97".

If I change the %d to %s, it segfaults (Linux) or crashes (Windows). I tested this on both since there are sometimes differences in OS. The fancy IDE I'm using on Windows - Code::Blocks - warns me about using %s. I think %s is only for character arrays. How can I actually put a character though without using an array? Putchar()?

Monday, July 19, 2010

A hunch

I have a hunch about why I was getting the segmentation fault earlier today.

http://www.eskimo.com/~scs/cclass/krnotes/sx5g.html

I'm not certain, but I need to move on.

weird

Changing the variable init line to:

char character[10] = "a";


fixed it... but that makes me sad. They haven't covered this kind of thing yet so I feel like there should be a solution more similar to what I already did'

segmentation fault

#include
int main()
{
char character = 'a';
while(1) /*clearly ill have to break out of this*/
{
printf("%s \n",character);
}
}

I should know why this doesn't work but I can't figure it out. It's certainly not covered in the book (yet). Woof - to the internet I go.

Chapter 2

If this book really does reward careful and thoughtful study, then I need to stop skimming. I was not closely reading the second chapter because it deals with data types (int, char, float, etc) and that's stuff I've seen for years. I really don't want to get into the habit of not really digging into the subject. Even if it's boring!

So... starting over with page 35....

Test Post

Making sure I can post via email.

Sunday, July 18, 2010

K&R notes

Some random searching revealed a site with some chapter-by-chapter notes on the K&R book. They've experienced the same issues I had with it.

http://www.eskimo.com/~scs/cclass/krnotes/top.html

It's not that the book is impossible to decipher for the newbie - it's just that it greatly rewards careful and thoughtful study. I don't feel so bad about taking three weeks on the first chapter anymore.

Saturday, July 17, 2010

Page 42

I'm on page 42 of K&R.

But for real

I'll use this as a way of meta documenting my progress. I need some measure of how I'm doing, and writing about what confuses me will help me know weeks from now if I'm past that point of confusion or stuck. I don't want to spend too much time spinning my wheels.

Thursday, July 15, 2010

Initial Parameters

Here's what I'm working with at this stage:

1) Dell Mini 9 netbook running Ubuntu
2) The C Programming Language written by Kernighan and Ritchie
3) The internet

Number 3 is a doozy. I've been bookmarking and printing out websites and any free books I can find.

I've been working with K&R for about three (or four?) weeks now, and I'm making some progress but it's weird because of how the book is structured. They have to analyze and try to compile programs well before they get into the nitty gritty. It has its benefits and detriments.