I am Rachel Andrew. Ask me anything.

Rachel Andrew is a web developer and co-founder of the CMS Perch.

She also writes, speaks and teaches most often about CSS.

Rachel also runs a weekly CSS Layout newsletter and is always on the lookout for good things to include.

Her personal site is at https://rachelandrew.co.uk.

Ask Rachel Andrew about:

  • CSS
  • CSS Layout Newsletter
  • Perch CMS
  • Writing & Speaking
  • General Web Development

Thanks for asking so many great questions. A few links on the things we spoke about.

For CSS Grid stuff see http://gridbyexample.com where there are lots of code examples, video tutorials and up to date browser information.

My product Perch can be found at https://grabaperch.com - check out our new e-commerce solution, Perch Shop https://shop.grabaperch.com.

Otherwise follow me on Twitter! Thanks again :)

Ask a Question

38 discussions

Hi Rachel,

Thank you for hosting the AMA here.

I have an age old question to ask; what are you thoughts on CSS frameworks? Do you use any; or do you write your own CSS for all of your projects?

I think every project needs to be assessed according to what is best for that project. Sometimes a third party CSS framework makes complete sense. Most recently I used Foundation for the Perch documentation, the important thing for that project was to have something straightforward that would burn up time better used improving the actual documentation.

I think the issue with frameworks comes when they are used without considering if they are the right tool for the job, or if developers are learning how to use a particular framework rather than learning CSS.

I think the frameworks fulfil different purposes for people. It is easy to think that these things are used by non-coders or people with less experience with code who want to avoid having to deal with CSS issues. In my own case, as a developer rather than a designer, the reason I like using them is because I feel as if they will save me from whatever I'm building becoming all a bit "designed by programmer"! I'd love to have a "framework" that didn't involve any code at all but instead gave me some rules about typography, the grid, colour choices and so on that I could follow.

Reply to this…

Hashnode is a friendly and inclusive dev community.
Come jump on the bandwagon!

  • 💬 Ask programming questions without being judged

  • 🧠 Stay in the loop and grow your knowledge

  • 🍕 More than 500K developers share programming wisdom here

  • ❤️ Support the growing dev community!

Create my profile

What are your favourite books - both technical and non-technical?

I'm not a huge reader of technical books these days, mostly because the most up to date information can usually be found better online. That said I read pretty much anything that comes out of A Book Apart and not just because I'm one of their authors. I like the short, focussed approach of those books.

I like books about planes and travel, I recently read Skyfaring by Mark Vanhoenacker, who is an airline pilot and writes about travel and the business of flying in a lovely way.

I read books about running, Eat and Run: My Unlikely Journey to Ultramarathon Greatness by Scott Jurek is excellent. Also Life Without Limits: A World Champion's Journey by triathlete Chrissie Wellington is a good read.

Fiction, I have always loved the books by Colette. I studied music theatre at college and wrote a musical based around her life and some of her earlier books.

Reply to this…

Thanks in advance for taking the time out for the AMA, and your answers, Rachel.

What are the pros & cons, and differences between traditional CSS grid layouts and Flexbox? What should be the decision checklist when I have the question, when should I be using which?

The basic difference between Flexbox and the CSS Grid Layout module is that flexbox is designed for 1 dimensional layout, that is laying things out as a row OR a column. Grid is designed for 2 dimensional layout which means columns and rows at the same time.

Rather than repeat myself, I have a blog post and code on this very issue which you can find here https://rachelandrew.co.uk/archives/2016/03/30/should-i-use-grid-or-flexbox/

However I'm not sure whether by "traditional CSS grid layouts" you were thinking about a float based layout. The difference between flexbox and floats tends to be most apparent if you want to align things, which is what flexbox will give you. You need to take some care with flexbox that you don't get the content shifting issue that Jake describes here https://jakearchibald.com/2014/dont-use-flexbox-for-page-layout/

Until we have grid layout in browsers then I think most of us will content to use a mixture of float based grids and flexbox, and just test to make sure that what we are doing works well on slow connections and also with older browsers. I don't have a "decision checklist" because every project is different. You have to look at the audience for the site you are working on and the design you need to implement and make those choices on a case by case basis.

Reply to this…

  • How did you get your start with CSS?

  • What was the inspiration behind Perch CMS? How did you approach your initial clients

  • How important is it for a front end developer to understand CSS in and out; versus just relying on a framework?

  1. CSS was new when I started with it, so really when it started to appear in browsers I began to play around with it!

  2. Perch came from a need we have as a company, we mostly did client work for design agencies rolling out custom CMS projects based on a larger framework we had developed. There kept coming up a requirement for something that had the same focus on structured content but was quick and simple to drop in. Solving that problem meant developing Perch v1. So it really was our requirement that we then realised might be useful to other people as a standalone project. The first customers were people who signed up to a mailing list we put on the holding page - some of those people still use Perch 7 years later.

  3. It's very important. Firstly for your own career, if all of your skills are tied up in one framework and that stops being popular you are going to be back to square one having to learn something new. Learn the core technologies and you can have a lot of confidence that you'll be able to move between things.

Also, if you don't understand the technology, it is very hard to be creative and come up with truly new and innovative solutions working with an abstraction that gives you a limited subset of the power of the underlying technology.

Lastly, unless you understand the edges of what is possible with CSS, you are unable to offer feedback to make CSS better. The CSS Working Group are keen to hear what people want out of CSS, browser vendors want to know if you find bugs or which parts of the platform they should be focussing on. If your view of CSS is only what is provided by a framework then you aren't in a position to do that, and this all gets better the more of us push to get the tools we need to do our jobs.

Reply to this…

First of all your advocacy for CSS grid layout and the resources you have provided on it are amazing, thank you!

My question is what future do you see for front end developers who are great at semantic and accessible HTML, and great at CSS knowledge and architecture, but will never be JS engineers?

If anything CSS is becoming far more complex and capable and I think there will always be roles for true specialists in HTML and CSS, architecture and accessibility. The key thing is that if you are going to specialise you need to really specialise, you need to be a real expert in your thing and be able to demonstrate why an organisation needs that specialism as opposed to having someone who is more of a generalist.

Reply to this…

Load more responses