Just read a good CSS book
-
I've been hacking my way through CSS for years, just dealing with whatever the problem at hand was and moving on, so I wanted to go back to basics. Made it through this in one day and found it nicely done. CSS3: The Missing Manual[^] (David Sawyer McFarland). I bought it because it wasn't CSS3 specific. It covers CSS in general, breaks out CSS3 and HTML5 so you can easily skip past if you're not supporting them, and has a nice organization & flow to it. I don't know the guy, but I've slogged through many a geek book that ended up being 30 pages of information, jam packed into a 500 page tome (tech books are typically sold by the pound). When I bump into one that's clean and well written, I figure I should share it with the rest of the class.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
His earlier book was great. I'll have to pick up the new version!
-
Yeah, I can dig it. That's why I've had my nose buried in books for MVC, JQuery, CSS, etc. the past couple of weeks. After so many years in this business, it's kinda nice to start out knowing nothing, ain't it? :)
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
Christopher Duncan wrote:
it's kinda nice to start out knowing nothing, ain't it?
To some extent. Unfortunately, my entry into this has been to work with other people's code in fairly large applications, which means walking into poorly designed and poorly documented vats of spaghetti code. One of the projects (a Ruby on Rails project) added the additional complexity layers of Slim (actually a very nice way of working with HTML and metadata) and SASS (actually also a very nice way of working with CSS.) It's been an incredibly frustrating experience. On the other hand, I've started writing a RoR site for navigating SQL Server databases, I call it the "Spider UI", and decided to take on SASS and SLIM on my own. What I discovered is that it is CRITICAL to explain the intention behind the markup and the CSS. I'll give you an example: SLIM (slimmed down HTML):
- # table navigation
.navigation
fieldset
legend Navigation:
br
= f.submit("Show All Records", name: 'navigate_show_all')
br
- # Separate div because 'Go' buttons are left padded.
.nav_options
br Navigate to parent:
= select_tag "cbParents", options_from_collection_for_select(@parent_tables, 'id', 'name')
= f.submit("Go", name: 'navigate_to_parent')
br Navigate to child:
= select_tag "cbChildren", options_from_collection_for_select(@child_tables, 'id', 'name')
= f.submit("Go", name: 'navigate_to_child')SASS:
.navigation
float: left
width: 200px
height: 600px
padding-top: 23px
padding-left: 20px
fieldset
width: 240px
height: 592px
/* Separate div because 'Go' buttons are left padded. */
.nav_options
select
width: 80%
margin-bottom: 15px
input
margin-left: 5pxNotice that I put in a comment:
/* Separate div because 'Go' buttons are left padded. */
in both to explain why I have a separatediv
. It's stuff like that that drives me nuts when taking on existing web-apps and there's absolutely no comments to convey the intention of the markup. Another thing that has made working with legacy code complicated is the arcane and idiomatic usage of Ruby. For example, tell me what this does:Hash[keys.zip values]
You probably have no clue, and neither would I. Now, tell me what this does:
-
I've been hacking my way through CSS for years, just dealing with whatever the problem at hand was and moving on, so I wanted to go back to basics. Made it through this in one day and found it nicely done. CSS3: The Missing Manual[^] (David Sawyer McFarland). I bought it because it wasn't CSS3 specific. It covers CSS in general, breaks out CSS3 and HTML5 so you can easily skip past if you're not supporting them, and has a nice organization & flow to it. I don't know the guy, but I've slogged through many a geek book that ended up being 30 pages of information, jam packed into a 500 page tome (tech books are typically sold by the pound). When I bump into one that's clean and well written, I figure I should share it with the rest of the class.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
Too bad it's not on Books24x7.
-
Too bad it's not on Books24x7.
If you prefer eBooks you can always just buy the Kindle version. That's the version I bought. You don't have to own the device. The Kindle reader software is available free for pretty much every computer, tablet and smart phone out there.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
-
If you prefer eBooks you can always just buy the Kindle version. That's the version I bought. You don't have to own the device. The Kindle reader software is available free for pretty much every computer, tablet and smart phone out there.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
This is true, but my employer pays for everyone to have a books24x7 subscription, so I was hoping to be able to read it at no cost to me.
-
This is true, but my employer pays for everyone to have a books24x7 subscription, so I was hoping to be able to read it at no cost to me.
Hey, if you can get someone else to pony up for your tech books that's an excellent gig. That said, if you do end up adding it to your own collection, it's fifteen bucks well spent. I wouldn't recommend it if you're already strong in CSS and just want the CSS3 stuff as that's a very small portion of the book, but if like me you want to get a refresher on the basics, it's a solid read.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
-
Christopher Duncan wrote:
it's kinda nice to start out knowing nothing, ain't it?
To some extent. Unfortunately, my entry into this has been to work with other people's code in fairly large applications, which means walking into poorly designed and poorly documented vats of spaghetti code. One of the projects (a Ruby on Rails project) added the additional complexity layers of Slim (actually a very nice way of working with HTML and metadata) and SASS (actually also a very nice way of working with CSS.) It's been an incredibly frustrating experience. On the other hand, I've started writing a RoR site for navigating SQL Server databases, I call it the "Spider UI", and decided to take on SASS and SLIM on my own. What I discovered is that it is CRITICAL to explain the intention behind the markup and the CSS. I'll give you an example: SLIM (slimmed down HTML):
- # table navigation
.navigation
fieldset
legend Navigation:
br
= f.submit("Show All Records", name: 'navigate_show_all')
br
- # Separate div because 'Go' buttons are left padded.
.nav_options
br Navigate to parent:
= select_tag "cbParents", options_from_collection_for_select(@parent_tables, 'id', 'name')
= f.submit("Go", name: 'navigate_to_parent')
br Navigate to child:
= select_tag "cbChildren", options_from_collection_for_select(@child_tables, 'id', 'name')
= f.submit("Go", name: 'navigate_to_child')SASS:
.navigation
float: left
width: 200px
height: 600px
padding-top: 23px
padding-left: 20px
fieldset
width: 240px
height: 592px
/* Separate div because 'Go' buttons are left padded. */
.nav_options
select
width: 80%
margin-bottom: 15px
input
margin-left: 5pxNotice that I put in a comment:
/* Separate div because 'Go' buttons are left padded. */
in both to explain why I have a separatediv
. It's stuff like that that drives me nuts when taking on existing web-apps and there's absolutely no comments to convey the intention of the markup. Another thing that has made working with legacy code complicated is the arcane and idiomatic usage of Ruby. For example, tell me what this does:Hash[keys.zip values]
You probably have no clue, and neither would I. Now, tell me what this does:
Marc Clifton wrote:
For example, tell me what this does:
I believe in some states it gives you legal grounds for homicide. This is one of the reasons I prefer desktop or system programming to web development, even though I do mostly the latter these days. There's no reason you can't write pro quality code, but it's very common to see amateurish stuff in client side markup and scripting. Almost a web tradition. I guess because it was easy for people to fire up Front Page, go into the html to add a "blink" attribute and then say, "Look, mommy, I'm a programmer!". Don't get me wrong, I've seen plenty of crappy application code too, but the guys who come up via the traditional route tend to have a lot more discipline and, in my opinion, professionalism. They've also lived long enough to know what happens to guys who write code like that.
Marc Clifton wrote:
(yet another lengthy reply to Christopher - what is it about your posts that get me going???)
Probably because we've both been through the wars. :-D
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
-
Hey, if you can get someone else to pony up for your tech books that's an excellent gig. That said, if you do end up adding it to your own collection, it's fifteen bucks well spent. I wouldn't recommend it if you're already strong in CSS and just want the CSS3 stuff as that's a very small portion of the book, but if like me you want to get a refresher on the basics, it's a solid read.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
I do web UI stuff so infrequently that it sounds like a good book. Thanks for the recommendation.
-
I do web UI stuff so infrequently that it sounds like a good book. Thanks for the recommendation.
-
Yeah, I started out with Borland's Turbo C, but these days it's all about the web. It's a crappy development environment, but at least you don't have all the install issues we used to fight.
Christopher Duncan Author of Unite the Tribes: Leadership Skills for Technology Managers (2nd ed, just released) Have Fun, Get Paid: How to Make a Living With Your Creativity (Due Nov 2013) The Career Programmer: Guerilla Tactics for an Imperfect World
heh. To be honest I'll take 'em.