I have a situation whereas we have two web developers. One of them uses sass and the other one doesn’t. Obviously when the scss file is edited the .css file is compiled and updated.
But when the other developer edits just the .css file the .scss file doesn’t get updated. Is there a way to watch and update both files depending on which one was edited last. Or what’s the best way around this?
I work with Sass daily, along with Gulp, and I am pretty sure this is not possible. Only ~ 90% sure though.
Sass is really easy to understand if you know CSS. I didn’t know any Sass before starting my current job, but it’s pretty intuitive. Within a week he should be up to speed writing just like he’s doing CSS. He might have some issues getting used to & and mixins, but he’ll get over it.
The other developer just needs to suck it up for a week. I dislike Sass but it’s not hard to learn if you know CSS.
it is completely unacceptable for them to be working that way. Editing the compiled CSS file introduces huge levels of risk. When preprocessors are used it is to be assumed that no one will ever modify the compiled files without compiling it properly from source. Anything less is incorrect and highly unprofessional. That type of behavior would be grounds for termination.
Though perhaps someone simply needs to get with this individual and set-up an environment for them that makes it easy to compile. I have noticed that designers can be very lazy when it comes to this. Which is why they are not allowed to touch the codebase without supervision and oversight.
To defense of this individual it can be difficult to set-up a local environment to compile sass. That is especially true on windows based machines where installing ruby and specific, gem dependencies for projects can be met with utter frustration. Designers aren’t programmers and sometimes setting up an environment to use all these advanced front-end tools can be choir and even impossible for a designer to do. Which is why if you are going to use these types of technologies with none-programmers touching the codebase there should be assumed a certain level of responsibility for others to instruct and provide oversight. Obviously this might not be possible on a project handed off to a single individual who knows no better for a none technical client – to which point I would say you get what you pay for. However, in a team atmosphere those with more experience should help others for things like this. I mean that is essentially the difference from working alone and with a team – guidance.
The way to stop this all in its tracks is to set-up a continuous integration environment workflow that requires pushing a repo and automating the build for things like compiling the css. However, unfortunately that is a process that involves dev operations skills that many smaller companies, especially those with short term contracts seem to disregard as unimportant using the standard “ftp” straight to the server method. When you use that method these are the types of problems you run into as the number of individuals working on the project expands – conflicts and no level of oversight over the code base besides for monkey testing the front-end. Which directly translates to significant levels of risk for the business – broken pages, broken site, etc.
I totally understand this. It took me ~ 24 hours (3 work days) to get it working. Turns out NPM install was giving me an older version of gulp-ruby-sass. However THAT is no excuse for poor workflow. Someone needs to step up and get it going.
Are you using “designer” in the sense that they are photoshop people who try and code it as well? I feel like my opinion of designer varies from that and is causing some confusion in your post for me.
Well you can always set-up a virtual machine to compile on. On Windows that is probably the *best route. Espcially as the number of gem dependencies increases.
I’m mostly talking about designers with very little css and html experience. I think anyone who has been using css and html for over 2 years has probably heard of sass and knows even the basic workflow. Even if they don’t that is something that should be reflected in their experience and someone higher up the chain needs to provide instruction. The problem with that scenario is freelancers. When a none technical client gives free reign to someone on the server who knows little about these types of things that is when things become a problem. Likely a problem that isn’t even known until the project is handed off to someone else whom like me would see this and go crazy. I might in all honesty just move to the next project because someone working in this way I can only imagine the other mistakes they made along the way. However, this is typically a problem only for really small sites. Any larger code bases would certainly have people who know what they are doing providing oversight.
So yes, mainly lone designers who given free reign on a server have no idea what they are doing. The type of people who “just” need to install Wordpress…
Luckily I don’t work in an environment where this is a problem since we have spent a considerable amount of time on continuous integration workflow that prevents these things from occurring. It makes our websites a little more difficult to stand-up if you’re not familiar with git, amazon cloud, sass, etc but overall increases the stability and work flow in comparison to age old ftp which is a nightmare top to bottom as the team and infrastructure scales. However, those issues aren’t typically ones which a one or two person team working on a single server are going to run into. So yeah…
To compile Sass we have been using the koala-app for windows (http://koala-app.com/). In our business day to day is very busy and some of our developers would just edit the stylesheet out of ease rather than re-compiling it etc…
Whats the best way around this then, as we have multiple people who will be in and out of project files and we don’t really want to be overwriting old and new stylessheets etc… i can imagine it getting very messy. To make things worse the programs we use to develop are different also. I.e i use sublime but the other two insist on using dreamweaver
Is it viable just to revert back and use normal css to avoid issues.