26 ms·
There's never been a better time to build websites
- mgaunard 5y agoThere was only one good time to build websites, and it was in the early days of the Internet. Now the market is overcrowded with little opportunity to demarcate yourself.
- andybak 5y ago> Remix.run gives us the best of both worlds. Still writing your site predominately with JavaScript. [...] This point is stated as if it's a widely accepted truth. Is that really the case? I still labour under the misapprehension that one should aim to use as little javascript as possible.
- tannhaeuser 5y agoAlso, TFA praises Tailwind CSS as "solving CSS", and as great as it may be, I guess that statement lacks a bit of nuance.
- andybak 5y agoI hear so many people recommend Tailwind but every time I look at examples it reminds me of an entry for the 17th Annual Esoteric Programming Language Competition. Maybe you get used to it but hell it looks hard to parse visually.
- omgitsabird 5y agoAll CSS is hard to parse visually. Unless you follow very strict development guidelines, you do not really know anything unless you look at the computed styles in a debugging tool. I think Tailwind does help wrangle some of that cognitive overhead with its naming system.
- jspash 5y agoTailwind is definitely a Marmite framework (either you love it or you hate it). Yes it can be difficult to read. And it can be difficult to debug and fix something where you make a small change and it cascades 'upwards' somehow. But... the problems I have with Tailwind are no different to the ones I had with CSS and all the various magic methodologies that were supposed to "fix" css - things like BEM & SMACCS). But the big difference is that I can solve those problems in a fraction of the time with Tailwind. As a last resort you can just strip out all the classes of the elements in question and start over. If I had to do that with normal CSS, it would almost definitely break something somewhere else. With Tailwind, you are working in a highly localised area and can see everything you need on one screen. That, to me, is the power of Tailwind.
- rvense 5y agoThere's something about Tailwind (which I use, love, and evangelize to all who will listen and many who won't) that makes me think of the phrase "You can't fire me, I quit!"
- danielvaughn 5y agoYes. The true test of a CSS framework is how easily you can change it without breaking shit. I haven’t found a better solution than Tailwind in that regard. Emotion comes close but it also encourages you to componentize everything, which can cause change issues. In Tailwind I found my components disappear because I didn’t need them.
- danielvaughn 5y agoI kind of agree with the author that Tailwind is the best thing to happen to CSS. But yeah he definitely oversteps when he says that CSS is solved. It most certainly is not a solved problem lol. UI still feels way fucking harder than it should, in all kinds of ways.
- mikewhy 5y agoThe advantages given in the CSS section are really around: - utility classes - theme system Neither of which are unique to Tailwind (which is great in itself), yet the article paints it like it's the only thing out there solving for it.
- edelans 5y agoTFA ?
- mkl 5y agohttps://www.urbandictionary.com/define.php?term=TFA https://www.urbandictionary.com/define.php?term=TFA
- coldtea 5y ago>I still labour under the misapprehension that one should aim to use as little javascript as possible. Well, this is so 2005.
- andybak 5y agoYou say that like it's a bad thing?
- coldtea 5y agoI'm saying it in jest, but also as an observation. The TFA writer takes it for granted, but then again, so do many (most?) today.
- andybak 5y agoMaybe that makes it even more important to repeatedly raise the possibility that this assumption is wrong.
- BlueTemplar 5y agoYeah, some JavaScrit can be nice, but if your website stops working with all javascript being blocked, you should probably make a native program instead. This is particularly important so that web scrapers and other automated tools that the Web relies on can work. Also accessibility tools.
- mahkoh 5y agoOn the remix.run site it says >Remix is a seamless server and browser runtime that provides snappy page loads and instant transitions by leveraging distributed systems and native browser features instead of clunky static builds. Built on the Web Fetch API (instead of Node) it can run anywhere. I found no mention of the blockchain here or anywhere else. Why are they touting their own horn so much if they are clearly not Web3 ready?
- marcus_holmes 5y agoI have a feeling that this is the next religious war in dev. I read this article and shudder in horror at, well, all of it. I like static sites (that wouldn't take minutes to build if they were written in a decent language). Adding lots and lots of JS dependencies and frameworks gives me the screaming ab-dabs - it's just adding complexity and dependency. I like writing code, not plumbing together bits of other people's code with bizarre config files. I object to CodePilot for all sorts of reasons, but fundamentally because I enjoy writing good code. But I know experienced devs who have exactly the reverse opinions. Like OP, they see all this as going in the right direction and making their lives easier.
- 0x0nyandesu 5y agoI feel the same way as the author but I work with php. Recently it's all been TDD, statically typed, and JavaScript gets web packed into one or two files so instead of juggling 15 script tags I only have one or two and a style tag for css. With CI this all happens in the background on every commit. What you pay for when you hire a dev like me with 17 years of experience in the field is the ability to know which libraries are the best to use and which techniques are worth using in the process.
- auggierose 5y agoIs that not something you can learn by picking up any number of good books in the area in much less time? I am just getting into TypeScript programming, and I am really having fun. I learnt about the details of how Javascript works, and it is quite cool to have a static layer over a dynamic one. For learning JavaScript, I like "The Good Parts" and the "You don't know JS" series. It took me a while to learn how to create a datatype that can defend its invariants not only statically, but also at runtime, but that seems quite feasible as well, especially with decorators. It is interesting though that nobody seems to be particularly interested in doing that, there is not much direct information about this available.
- 0x0nyandesu 5y agoNot really. You can't replicate experience. Everything you just wrote about with data types, invariants, and decorators is just flavor which you only have control over in your own personal code however as soon as you interact with web browser APIs, nodejs, and 3rd party libraries all that goes out the window and you end up conforming to other people's patterns. In my honest opinion Typescript is a fad. You're still just coding JavaScript with an alternative syntax. Since you're borrowing dependencies from JS you need to know both and context switching between the two slows you down. From a CS perspective I get why TS syntax is better but from a functional perspective it's harder to find engineers that actually want to work with it because every TS project I've ever seen is really a mix of TS and JS.
- cblconfederate 5y agoNo it's not, because your website will not get traction unless you SEO the hell out of it, pay google ads, pay for FB ads, pay some blogger to write about it etc. It's impossible for a website to be found when the top spots in every search are capped by a few known players. It's easy to make a private web page, but that's not a website. In fact the best time was about 2005, when most current day's media sites started, because it was still possible to be found. The tech you use does not matter. The web is backwards compatible > The first time you see your website instantly update because you made an change in your CMS, it'll shatter your whole Static Site Generated world view. Jesus, we 've had that thing since 1995. What happened?
- syshum 5y agoAs I get older I remember more about what the grey breads I learned from would say "everything in tech is a cycle. What we have now will be replaced with something new which was which will be replaced with something old reimagined." If you stay in IT long enough you may see this cycle repeat 3 or 4 times
- helmholtz 5y ago> "...your website will not get traction..." And? Not to be glib, but you need exactly zero readers on your website to have a whale of a time making it. In terms of building a website, the tech is exactly what matters because that is where the fun is. I fully agree with your last sentence though. It's ridiculous to think that only dynamic CMS' allow instant changes. A small static website reloads instantly. Even better, one doesn't even need the internet since you can see the updates localhost!
- rchaud 5y ago> Jesus, we 've had that thing since 1995. What happened? I thought the same thing. I have built several custom WordPress sites, and changing the PHP code and hitting F5 shows me the changes immediately. What world is this where a site needs to re-compile each time a change is made?
- geokon 5y agoFrom reading this I get the sense the problems are lower level and there is no impetus to fix them. I'm embarrassed to say, having programmed for over a decade, and running Linux for half of that, I still have no idea how to setup my computer to serve a webpage (or even a file) I probably need to `apt-get install apache` and then deal with some magic config files and incantations and hope I don't mess something up and expose my whole computer to the open web. Then there is the whole mess of NAT (wasn't IPv6 supposed to kill off NATs?). I need to then figure out the endless (and impenetrable) configurations in my OpenWRT/LuCI router to open a port and have it forwarded to my computer. Or maybe that needs to be done "upstream" in my landlords internet cabinet..? I'd have no idea how to even figure that one out b/c my router doesn't make it obvious in any way. Then I need to find some DDNS service and figure out how to get that to route traffic from a URL to my IP (and then it's somehow supposed to reconfigure when my IP dynamically changes? Is that some cron job I need to write?) Hosting webpages from home is still complicated and no progress has been made. And if you do it wrong someone will hack you and steal all your files :) The incumbents are probably happy it's so painful and you still need to do technical gymnastics to punch through NATs and whatnot. This text further confirms it by just telling people to host int he cloud. And understandably.. you'd have to be a total nut to serve a file from your home instead of dropping it on Google Drive. When I was studying this stuff in college I just figured tech is in an awkward teenage phase and this will all get worked out and streamlined - but I think it's not going anywhere This isn't the tech future of 80s scifi I don't mean to be wholly negative, I'd actually appreciate if someone pointed me to a good step by step to set everything up. At the moment I'm a sellout :) and I just use Github Pages and git push HTML/CSS files there. Ideally it really should be just as easy to git pushing to your own home computer but till then I guess I'll do that..
- dvdkon 5y agoMost of the things you've mentioned are caused by the delayed IPv6 rollout, self-hosting just isn't a priority for residential ISPs. I'm sure that there are plenty of good tutorials on setting up Apache or some other web server, those tutorials can't exist for actually exposing it to the Internet, there's just too many routers and ISPs.
- alin23 5y ago
- alin23 5y agosanity.io sounds and looks awesome! I didn't know about it until now. I'm wondering if Sanity would be a good fit for creating static websites for other non-technical people but still give those people the power to update the content themselves. I've been trying to acomplish that with Airtable but I quickly ran into annoying limitations. For example, I'd like to create a gallery website for my artist brother (something similar to this: https://brooksburgan.com https://brooksburgan.com) and give him the possibility to re-arrange, add and remove images without going into HTML or JS. Can anyone who used Sanity let me know if this is a valid use case?
- manigandham 5y agoYes, it's actually the main use case for these "headless" CMS systems like Sanity, Contentful, Strapi, etc. Even Wordpress can be used as an editor only with content pulled via API into some other system or build process so that the website/frontend is completely separated from the content. Search for "headless cms" and you'll find countless articles about this.
- omgitsabird 5y ago> CSS is effectively solved. Tailwind CSS is the best thing to ever happen to CSS. I cannot imagine ever writing CSS in a separate file and having to think of names for elements. It's also an excellent resource for beginners. I work with developers still have difficulty with concepts like specificity and cascading even though they have been working with CSS for many years. I don't think statements like this are true or encouraging.
- christophilus 5y agoTailwind kind of makes specificity and the cascade a non issue, though. Sounds like it might be just the thing for these developers.
- omgitsabird 5y agoYes, and I would argue that many people using frameworks like these never learn those fundamental concepts.
- rimliu 5y agoI'd argue that never learning is the primary reason those frameworks exist.
- SquareWheel 5y agoPlenty of web devs understand how specificity and the cascade work. That doesn't meant that they work well. CSS is full of examples of good-sounding ideas that didn't pan out. Frankly the whole thing works better when you avoid touching the cascade as much as possible. Which is why these atomic frameworks are modeled this way.
- rvense 5y agoI thought that was a weird statement. Tailwind solves (kind of, to me) the problem of organizing CSS. I mean, you still have to pick the right rules to write.
- rambambram 5y agoI'm also developing for 25 years, I also really really like websites and coding, but not for the reasons the OP sums up. For me, it's not about all kinds of solved or unsolved technical questions. Today is a very good time to build websites, because a good website is the only way to push back to Big Tech and it's practices. Your website can be build on techniques invented in a time where the dream of the internet was not yet shattered by Big Tech. Of course you can choose to put your website on AWS and svck on the bolls of Jeff a little. But you don't have to! And that's what all kinds of young devs just miss. Oh, and RSS is not dead. Not at all (thanks WordPress, for putting a feed on every instance). RSS is the only workable way to make the web social again.
- randmeerkat 5y ago> Of course you can choose to put your website on AWS and svck on the bolls of Jeff a little. But you don't have to! And that's what all kinds of young devs just miss. Where are you hosting your websites?
- mysterydip 5y agoCan't speak for OP, but mine are on vultr. There's a whole industry of web hosting, virtual private servers, or colocation facilities to choose from.
- vgel 5y agoNot OP, but Linode. Used to be on their $10 a month VPS, downgraded when they added the $5 a month one. I think they have some fancy Kube stuff now but I just have a makefile that rsyncs a directory to my VPS and nginx picks it up. Honestly even the $5 VPS is more power than I need for static files, but it's nice to have the option to throw up a flask app or run some web-scraping scripts overnight or something. Admittedly it's behind Cloudflare because DDOS skiddies, but I think the CF lock-in isn't much if you're not using workers or anything proprietary to them. Admittedly it does suck for people with really privacy-customized browsers or using Tor, but idk a better solution unfortunately.
- 5y ago
- stopcraeting 5y agoI hate every new technology listed in this article. I recently removed all of my SQL-in-programming-language code (orm, strings of SQL) etc, and just wrote actual SQL in files with .sql at the end and load them at run-time. I am now, when my finger heels, going to do the same for the React. I hate React. I have been using it for years and I have never enjoyed it. I feel like everything made after the boomer technology just sucks. I am going to write html, css and JavaScript, and as intended, not fake JavaScript (React), not mangled css, etc. I noticed when setting out on this journey that vscode and I am assuming others, have little support for these things, which is hilarious. vscode can't even detect unclosed meta tags in html, yet can detect a million React syntax errors.
- Winsaucerer 5y ago> just wrote actual SQL in files with .sql at the end and load them at run-time I like this idea, but I'm interested to learn how you are handling dynamic queries -- e.g., when you want to change the order-by field? You can use CASE in some situations, but it has limitations. Another option is to construct the dynamic query in SQL rather than in your outside-the-db application code. Just curious how you approached and solved this?
- stopcraeting 5y agoSorry if reply is shorter than I would like due to hand, but the dynamic aspects I have encountered have been solved by case when as mentioned, boolean expressions on parameters (where $1 is true or id = $2), or in the worst cast just not caring about DRY in this scenario. Also I use json_agg etc for ORM-like mapping to arrays and objects. I do some other tricks too like bypassing a bunch of redundant and slow parsing steps by sending the result in certain queries back to app server as a single text column that is in JSON (this is via wrapping queroes, not manually) so it can send that to the client. No db driver parsing, converting to objects, back to JSON, etc etc.
- Winsaucerer 5y agoThanks for writing what you have. These all sound like reasonable approaches. Just to add some extra options/thoughts because I’ve been thinking about this lately, for cases where CASE doesn’t work well on order by, you can use dynamic queries to construct the final query in SQL. Another option might be to include a splash of templating to your .sql files, and parse them at run time, or use them to generate the final .sql files beforehand so that they can be tested directly via something like pgtap (repeat yourself via templates instead of by hand). The main reason I like the sound of including the queries in separate .sql files is precisely so that they can be easily and directly included in tests. The downside is the query isn’t included next to the code that uses it, so a little hunting needs to be done to find it (always tradeoffs!).
- nextlevelwizard 5y ago> Static was a fun diversion, but we're back to what works. I won't be moving away from static website. It is perfect solution for a blog/CV type thing. >you might think that minutes-long build processes are normal If compiling your static site takes minutes there is something fundamentally wrong with your site in my opinion.
- mikewhy 5y ago> > Static was a fun diversion, but we're back to what works. > I won't be moving away from static website. It is perfect solution for a blog/CV type thing. Yeah, I'm keeping an eye on these new "MPA"/"transitional" frameworks, but the thought of taking a static marketing page, which costs fractions of a cent to serve and is easy to put on a CDN, to now requiring a backend server which costs magnitudes more, seems foolish.
- nextlevelwizard 5y agoAssuming you don't mind Microsoft or Github you can host a blog or whatever on github pages for free. You can even use a custom domain. That's how I host my site.
- Tade0 5y agoI laid my first lines of JavaScript(JScript, actually) in 2001, have been doing this professionally for around a decade now and I judge this blogpost as generally ignorant, but that first quote is especially so. 90%+ of the Web is just static sites with JS sprinkled on top. That has always been the case and will stay that way for the foreseeable future, because it's the most simple, pragmatic and accessible solution.
- canyonero 5y agoI'm amazed by the amount of shade I've seen lately being thrown onto SSGs and building websites with static HTML. Though, it seems to be permeating from folks that have a vested interested in having you run code on a (or their) SSR platform. There are some interesting properties of server rendered websites and it can be the best option in some scenarios, but in others it adds complexity and burden on the end user. To suggest that static was a "fun diversion" detracts from the value and I feel we'll be going full-circle once again after we've realized that "what works" isn't always server render HTML.
- deniska 5y agoThe title is pretty much the only part of the article I agree with. While the industry was largely distracted by various NPM packages, the foundation we are building sites on got really nice. And I believe in some situations there's value in trying to use this foundation directly, not via a plethora of abstractions. Browsers are great, DOM API is great (well, certainly provides some really nice utils we previously had to look for in external libraries like jquery). CSS is great. I will write "display: flex;" multiple times just because it feels nice to type that, compared to the dance we had to do a couple of decades ago to achieve same layouts. Static sites are great. They are fast to build, and they build fast. They are really easy to deploy as well. And they also work really well on end user devices. No single line of JS required, but if you want to have some liveliness on the page which can't be easily achieved by CSS animations, very few lines of JS are actually required nowadays. And 0 NPM packages. Modern JS web frameworks do solve problems some people actually have. But they're best suited for big corporate style webdev. For personal projects I prefer something more… artisanal? Dunno, it's like building a piece of furniture yourself instead of buying one from IKEA. Probably less practical, but feels nice. And may actually fit better in this one weird corner you have.
- jokethrowaway 5y agoI can't disagree more. Static websites are valid and incredibly relevant, no need to prop up the friends at Remix (which is a nice product, just not the end all, be all - we were doing this 20 years ago as well). You can very well show changes immediately with different strategies - but having a single artifact of what's online is invaluable. Caching dynamic content is fine, but having a log of what changed is nice as well. A setup I like particularly is to have a real time cms available privately or locally - and a big publish button which build the static website and serve it. That said, the only positive of today's web is that crossplatform compatibility is mostly a solved problem. Performance went down the drain to the point that you need a beefy computer to browse multiple websites at once. Data usage is at all time high. Browsing on a payg phone is pretty expensive. The development world went batshit crazy (likely driven to resume driven development and cargo culting), which means your average codebase today is massively more un-neededly complicated compared to your average codebase 20 years ago. Development experience in your average codebase is also way slower with all that transpiling (running on a scripting language with bad performances). My rust feedback loop (not the fastest compiler among backend languages) is faster than my typescript one. 20 years ago I loved creating websites, despite the challenges. Today, I try to avoid it as much as I can and do backend. I still create frontend for my own websites and it's overall as great as 20 years ago - but I don't use the slow mainstream tools which I'm forced to use when working with clients.
- shaan7 5y agoI used to be excited about building websites ~10 years ago when it was about building web pages (you know, the thing HTML and friends were designed for). I "rage quit" after people started (ab)using web development to build approximations of apps. The reality that in the end the majority of people don't care about "use the right tool for the job" hit me hard. I would have never imagined that big companies with good enough budgets would still build applications with HTML just because "everyone knows JavaScript". It is all so demotivating -.- These days I just try to find niches where people still care about using the right tool for the job and writing efficient GUI software. Lets see how long these continue to exist.
- rchaud 5y agoWithout people shoehorning applications into the Web, the web itself would be dead. Nobody would have a need for an electronic document system that only supported static text and images. Apple and Google would be celebrating because the world would self-corral into their walled gardens because they alone would control the runtime environments for mobile applications.
- rado 5y agoNo need to name components? Good luck with the designer-developer communication, design system etc.
- open-source-ux 5y agoI expected the section titled 'CSS is a solved problem' to talk about modern CSS features like CSS Grid and variables. Instead, the article declares the popular framework Tailwind CSS to be the 'solved' solution. CSS will never be nice (tolerable at best), but modern CSS makes it much easier to create layouts in modern browsers - rather than having to rely on horrible CSS layout hacks from the past. In short, CSS is not 'solved', but modern CSS is more powerful and capable than it has ever been. If you want to take advantage of it, you simply need to put aside some time to learn it.
- _the_inflator 5y agoI started "developing" websites with my AOL account around 1995. I registered my first domain 1996. Now that most of the "web standards wars" have been fought and most of the new kids not even heard about Blue Beanie Day[1], to this day my best advice for single (!) amateurish developers is: a website is, what a browser interprets as such. Simply put or hack in your code and enjoy. There is no right or wrong, only creative geniuses who put a lot of creative thinking into how to design browsers. Kudos to Zeldman for inspiring me. And kudos to all the people who simply hack in code and do not care about conventions. [1] https://en.wikipedia.org/wiki/Blue_Beanie_Day https://en.wikipedia.org/wiki/Blue_Beanie_Day
- rvieira 5y agoI can share my (unsolicited) thoughts FWIW. I have never been a UI or front-end developer (altough I am professional programmer), but I do enjoy dabbling in making websites and keeping up with mainstream technologies for this area. I do find that for amateurs like me, building websites is more enjoyable than a couple of decades ago. Deploying static sites was never easier and the tooling was never better. I can make a quasi-professional site with just some Markdown and sprinkling some off-shelf CSS and minimal Javascript and we're done. Now, regarding professional developers, I look at the pace at which all tech stacks get obsolote and it's quite scary personally. I'm not sure it's fun.
- hankchinaski 5y agoI am still reluctant to use JS/CSS frameworks. What I learned in 10 years is the fact that I hate learning useless abstractions that will eventually fade within the span of 18/36 months. The joy in web dev for me is creating stuff not learning how to use frameworks.
- frankzander 5y agoMe too. Also the frameworks deliver a lot of bloat and dependencies which can be a boomerang. For example I did some pages with bootstrap 3 ... for that I had to use a module which modifies the html templates of the CMS. Than the CMS got updated several times but the module is not been updated b/c bootstrap 3 is obsolete. But hey the there is a new module for the new cool guy in town BS 4. So you can't update the CMS or you have to rebuild a large part of the website for the sake of updates. That's totally senseless since it has no advantages for my customers. Yes I can sell it with "you must update because of security but hey nothing changes ..." - something what I would absolutely hate if it's done to me. I have my own framework - smaller and it fits my way to work. And yes I understand that this would be a other situation with a team (but then you have a guy without soul, moral and honor which is called "the sales guy" who sales everything).
- vogre 5y agoThe frameworks are really stable these days. There was like one major change in React since it's beginning - introducing of hooks. But if you got in right 8 years ago, you can just sit and write a good SPA with that knowledge
- watermelon0 5y agoVue.js is the only frontend framework that I have some clue about, and the first blog post when googling 'Vue 2 to 3 migration' [0] says it took them 4 man-weeks to migrate their product. From my limited experience, the main issue is that it's really hard to ensure frontend actually works as before, after upgrading frontend libraries/frameworks, outside of having really extensive end-to-end test suite. [0] https://crisp.chat/blog/vuejs-migration/ https://crisp.chat/blog/vuejs-migration/
- abe-101 5y agoFor a while my personal website https://old.habet.dev https://old.habet.dev was the result of some free HTML template that i reused. But I got board if it and wanted to to start a blog. So over the weekend I downloaded WordPress, set it up and wolla a few hours later I have fully functional site with a blog (thank g-d for open source). It was a thrill to get it going. https://habet.dev/2021/12/self-host/ https://habet.dev/2021/12/self-host/ I'd love to hear your thoughts on my site.
- denton-scratch 5y agoPardon me, but I seem to be suffering from terminological confusion. I'm puzzled by this business of "building" static sites being a process that takes minutes. Perhaps my understanding of the term "static site" is awry; I parse it as a site consisting of HTML markup, JS and CSS, all that code being handmade, rather than generated. If that's right, then a "static" site doesn't need to be built. I presume it's supposed to be contrasted with a "dynamic site", which I parse as a site in which the code delivered to the browser is not the code that was written by the developer; instead, the developer's code gennerates the browser's code at runtime (but it's still not obvious to me why that should need a build step). Or are we talking about writing sites in meta-languages, that have to be subjected to a translation process to yield code suitable for browsers? That would explain the build step. I can certainly see the sense in layering a meta-language over CSS, but generated HTML is just annoying to my mind (and generated Javascript seems like a recipe for madness).
- n4bz0r 5y ago> Or are we talking about writing sites in meta-languages, that have to be subjected to a translation process to yield code suitable for browsers? It's too laborous to handcraft each page, so people would use template engines and things like Markdown -> HTML converters so they would only edit the meaningful part of the page manually. Some also choose to compile a dynamic site into a static site. WordPress plugins allow for that, for instance. Doing so, you get all the advantages of a dynamic CMS, while keeping the ability to serve the site as a bunch of plain HTML files. The process of compiling would be the 'build' step you are wondering about.
- denton-scratch 5y agoThanks for the reply. > all the advantages of a dynamic CMS I spent ten years making websites using Drupal, which I take it from your context counts as a "dynamic" CMS. FTR, my work was coding; I never got into the trade of making sites by glueing other people's modules together. Well, that kind of site development didn't involve a build step. You could modify the PHP code for a module, load the page in a browser, and immediately see the result of the change. The only things I can think of that required a build step were: * SASS * Some weird Google technology that I avoided like the plague (and that I believe is now considered obsolete) SASS was quite good for making it easier to understand CSS. The need for a build step was annoying, though. My colleagues were also working with some technology with a name beginning with 'R', that generated HTML on the fly, in the browser, using Javascript- not just using templates. I never engaged with it, and I couldn't read the generated code, because you couldn't view the page source. If "dynamic" means "the content comes from a database", as in Drupal or Wordpress, then I think my ignorance is excusable; a Drupal site would behave exactly the same if it consisted entirely of static HTML, JS and CSS. I once worked with a CMS that used a database to hold the content; but which required a "generate" step to turn the database content into static pages, which is what the site actually served. But that wasn't a "build" step, because it ran on the server in the background, every ten minutes or so. The submission page was a Java servlet, but the Java code only ran when you were submitting new content. The generated static pages could be dropped into the document-root of any HTTP server, including ones with no JRE. Of course, the "generate" step here was a convenience, but inessential; the servlet could have converted new content to static markup at the time of submission, rather than on a timer. It was just more efficient to do the whole site at once, rather than rendering each page at the time of submission. This was a large site, with tens of thousands of pages, and many, many comments per page. We considered it a static site.
- snorremd 5y ago> Tailwind CSS is a design system token generator This exact quote beautifully sums up Tailwind and should explain part of the "Why?" of Tailwind to those that do not understand why you don't just write plain old CSS instead. Yes, you'll have to learn some new tokens in lieu of simply writing CSS statements. But what you get with Tailwind is a utility-oriented design system that allows you to put constraints on your design. These constraints add consistency to your design. With Tailwind (and similar frameworks/libraries) you get these constraints and the following consistency cheap. With plain CSS you need to actively work to put constraints on your design (e.g. building out a design system using CSS variables). There constraints are opt-in, not opt-out. That utility based CSS frameworks like Tailwind also tend to solve specificity issues is simply a bonus.
- nbzso 5y agoI have a question. Would someone please give me some form of enlightenment about the practice of product placement in blog posts? Is this the new normal? >I'm Simeon, a in and Solution Engineer @ Sanity.io > Some major bias at play here but when I came across Sanity I finally found "the CMS I'd always hoped existed". It is cool, that he acknowledges the "bias", but this is more in "conflict of interest" category in my humble opinion. What do you think? I am curious. Edit: Please, don't just downvote. I don't care about "karma". Give me some explanation.
- dwkns 5y agoThe OP used to work for me. He was a massive fan of Sanity before he went to work for them. I think that in part that is why he went to work for them. Knowing him, I am sure that he was was not consciously doing any product placement, rather showing what he genuinely feels about the product and heading off any conflict of interest concerns others might have. As to the practice of product placement in blog posts. This is HUGE and the way that many bloggers make their living (although less so in dev). Affiliate marketing (getting paid for links to products & services) makes up around 10% of e-commerce transactions. It's been around for a long time and is likely to continue to grow as it's one of the few directly attributable sales channels (not without its issues however). I'm fine with people monetizing their content, especially if it's useful and ad free. What is less comfortable is where people don't make it clear that they get paid for it.
- exodust 5y ago> I am sure that he was was not consciously doing any product placement But it reads like product placement. You said yourself that product placement is huge. From the article... > "And if there's anything you feel it can't yet do, it's only because you haven't spent enough time building it yourself yet. There's no stopping you." There's no stopping me? That reads like marketing spin. > "it happens to be the best CMS." Says the guy who works there. > "incredibly generous free tier" So not just regular generosity, "incredible" generosity!
- nbzso 5y agoThanks for the answer.
- arbuge 5y agoThere has never been a better time to build websites. Or web apps. Or SaaS apps. etc. There has never been a harder time to get the word out about them. Which makes sense. The more you make it easy to build them, the more there will be. But the world population increases slowly and only has a finite attention span. More and more websites are competing for a pie growing much more slowly.
- kevincox 5y agoI'm honestly not sure if this is satire or not. > Static was a fun diversion, but we're back to what works. Static works really well for many use cases. And you are never going to beat the performance of static in a cache close to your user. I agree that there are many cases where server-rendered is the best option but static with a good sprinkling of JS and server-generated embeds definitely works. > Tailwind CSS is the best thing to ever happen to CSS This is obviously controversial. Maybe for non-static websites where every `<p>` in your site is generated from the same line of code it is trivial to add `class="m-4 text-gray-900"` when I may use the same component in multiple places that gets boring really fast. > GitHub Copilot Maybe if you weren't writing `m-2` on every p this wouldn't be as helpful /s Maybe I haven't seen the light yet, but in most weakly-typed languages Copilot felt like a huge loaded footgun. It also generally worked on the simple cases that didn't require much work anyways. --- I think it is clear that this person found an approach that works for them, but it seems like there is still a lot of from for improvement here.
- taubek 5y agoI think that is is important to take into consideration all off the possible additional overhead and costs. Just because something can be done it doesn't mean that it has to be done. The main question is, why do you have a website? If it is to learn new things, to play around that frequent changes are ok. But if you need something that will be stable, and easy to maintain over a long period of time you should be more careful with your choices.
- hooby 5y agoIt's definitely a great time to build websites, but saying they _NEVER_ have been easier to make... I'm not 100% sure about that. Yes, tailwind might make css a lot easier, and github copilot might make coding a lot faster... but is this really easier than in the early 90ies, when you could just type <html> into notepad and make a website that didn't require any CSS or images or JS or even more than just the most basic html tags? When it comes to reading a blog or article or consuming any other form of textual information on the internet - I find myself increasingly enamored with "Reader View" in Firefox, which basically ditches all the crap, and displays the web-page in a default-style, as if it was just the most basic html - just like that we did write in 90ies. Of course this doesn't hold true for any webApps that do more than just present textual information (and the occasional image) - but why do project like ViewPure exist? There seems to be at least some demand for getting rid of all the clutter. Is tailwind really easier to work with something like - let's say - pico.css? Of course if you want to do super-elaborate layouts, then probably yes - but if you embraced a more minimalist approach? Isn't Hacker News itself a really great example of a website that successfully uses only very basic html with very, very little styling and fancy extra features?
- ajlburke 5y agoHacker News still uses tables - for layout! But it always loads super fast, and it just works. We figured out how to display text on a web page decades ago. It's a shame more people aren't just doing it the direct way anymore. (Applications are a different matter obviously)
- jaimex2 5y agoNah, the golden era is long behind us. Every site looks exactly the same using all the same bloated libraries, bootstrap CSS and hosted on the same 3 cloud providers. Gone are the days of instant load 20kb sites or quirky flash marvels hosted on anything from an home laptop to VPS. In the mobile first mess where you have to debug your crap not just on multiple browsers but devices there's never been a more mundane time. I won't even get into plumbing.
- freeflight 5y agoAs somebody who's only dabbled in creating a personal website in the late 90s, using FrontPage and hosting on a free hoster, the current web seems like a completely, and way more complex beast to build websites for. Back then all I needed was get a bit familiar with FrontPage and html scripting, some Photoshop to create/edit image elements, and I already had a functional website. I knew if I wanted to "really" do it, I should probably learn proper html, but 15 years old me was already plenty proud of having a pretty good looking, and well working, website at all. It even had a visitor counter, and a guest book, all the Jazz that defined 90s websites, and that was enough for me. Now, over 2 decades later, just the prospect of getting back into it seems so extremely more daunting and complex. We are now at Html5? At "Web 3.0"? I don't really know anymore, it's all just become so "vast" with so many options and so much complexity that I wouldn't even know where or how to start anymore. Is it still viable to just learn plain html and do something with that? Have WYSIWYG editors matured so much that they can be used at least semi-professionally, or is that still "looked down upon"?
- Mezzie 5y agoI started in the 90s and have dipped in and out of web dev ever since, but my impression is that a lot of the complexity stems from organizations and teams getting bigger and needing to work with one another. Frameworks and tools proliferate in order to make it easier to spread the work out across devs, communicate with one another, deal with version control, etc. The other main reason is to deal with the fact that a lot of web 'pages' are actually apps now and have to talk to the server/there's a bunch of backend stuff going on, so there has to be reconciliation between front-end and back-end. If you're working on your own and don't need a back-end, there are options for putting up a personal site. Webflow[0] and Squarespace[1] come to mind. They'd be taken seriously semi-professionally in non-tech spaces. Can't speak to tech ones. [0]: https://webflow.com/?r=0 https://webflow.com/?r=0 [1]: https://www.squarespace.com/ https://www.squarespace.com/
- wombat-man 5y agoYou can still do html people will just notice that. Personally I don't care. I'm not a webdev and I don't pretend to be. I have setup a pretty basic sorta retro personal website where people can find my resume. There's a lot more you can do with static sites, it just depends on how much time you want to sink into it. I just made something basic. Maybe when I'm bored I'll try to build on it.
- quotemstr 5y agoTailwind doesn't "solve CSS". It destroys it. Tailwind is nothing more than a layer of obfuscation on inline styles spelled directly. There's no semantic component.
- grayrest 5y agoTailwind is a design system. It's not the same as inline styles because the options are constrained and are picked to fit on a coherent scale. I consider the inability to do this natively to be a longstanding gap in CSS itself and have been doing my own variations of the tailwind utilities with sass mixins since 2009. I'll point out that CSS has no semantic component in itself. It's just a way to apply styles. If you want to keep semantic class names then you can apply the tailwind design language using the postCSS `@apply` in the body. There's a tradeoff between the value of semantics against the value of greater code locality and elimination of specificity as a concern. In practice most people seem to prefer the latter.
- iandanforth 5y agoThis article strikes me as hopelessly naive. Filled with the same kind of 'new is better and solves everything' mentality I've seen in the JS community for years. There's no desire for maturity because nothing has ever matured. Even frameworks from huge companies go through radical internal paradigm shifts every 18 months. JS runs natively in the browser. The author implies compilation is required to deploy client-side rendered websites. Sass, Less, css grid, all claimed to 'solve' CSS for whatever the problem in the mind of the author happened to be. ... more of the same. This article brings no hope that somethings has fundamentally changed in the community.
- Reflecticon 5y agoLast weekend I tried to get my first website online and even if lots of information is out there, I was still surprised about the lack of intuition regarding the products. The learning curve is still steep and I'm not sure of the end product will come close to what I have in mind (informational knowledge base). All I want is a simple website, that runs on multiple devices without being convoluted by plug-ins.
- ixnus 5y agoJust what i needed boss
- ixnus 5y agoTruth
- bijant 5y agoThe uncaught error upon loading the side is kind of ironic.
- seumars 5y agoIs the "exciting" part that these new meta-frameworks save you from actually having to learn and implement proper front-end development concepts? Remix is an "inflection point" because now you don't have to learn how a server-side rendered website works. Tailwind is an "inflection point" because now you don't have to learn how a design system works, let alone how to implement one. Copilot is an "inflection point" because you no longer have to alt-tab between your code and google, or remember how regex works. It goes on and on.
- kwertyoowiyop 5y agoI’m fine with that. Programmers these days don’t have to understand how a linker works either, and I don’t blame them.
- robertlagrant 5y agoI remember when I was 17 (in 1999) and printing off an HTML tutorial website as a giant stack of A4, so I could read it offline. Anyone remember hasLayout? Now it all seems relatively simple to learn things, although picking what to learn is probably harder.
- rimliu 5y ago"It has never been easier to sweep things under the carpet."
- moritz 5y agoBeautiful how I can't read the article on a slightly outdated browser (the state-of-the-art SPA crashes), because in the best of all times to build websites with the internet-of-javascript-bs, actually reading them is a nightmare lol.
- superkuh 5y agoWell, this guy's site needs a lot more work. I tried to view it and every time I attempted to scroll down a giant black bar obscured the text. Bad CSS. And with CSS disabled, between every single paragraph this guy has GIANT "comment" buttons that fill the screen. It's unusable as styled and unreadable unstyled. That's quite an accomplishment. The best time to build websites is now. Everyone has the upload that enables them to host from home. Every computer has the resources the host a website without breaking a sweat. You can still just <html><head><title>my site</title></head><body><h1>My site</h1></body></html> and throw some images in a directory and your site will be unhackable, last forever, and extremely fast rendering. All you have to do is ignore everything this guy says. He seems to mostly be talking about commercial jobs for corporate persons and not human people.
- deleted 5y ago[deleted]
- henning 5y ago> So at some point we all accepted that if every time we need to fix a typo, it's okay to wait ~10 minutes to completely destroy and rebuild the website again as static files on cheap hosting, it'd be worth it. This is the stupidest strawman argument I've read all year.
- asoneth 5y agoThe more I learn about web developers, the more I like Gemini.
- logicalmonster 5y agoThe technology is far more advanced and bordering on magical in some cases, but most front-end web-development is far more painful and less fun to me than it once was. Say about 15 years ago or so, if you had a creative inspiration for a personal site, you could whip out a text editor and start building top-notch stuff very easily. About the most complicated thing you had to do to start building something was adding jQuery to a project. Today you have to research a pile of unnecessarily complicated (for most personal projects) frontend frameworks, libraries, and build systems, figure out the compiling and development environments, figure out a complex mess of containers and virtualization, etc, etc, etc. This stuff sucks the joy out of building anything, even if the actual coding itself is far more structured and convenient. By the way as genuinely nice as Tailwind can be, calling anything a solved problem is kind of arrogant. There will probably be other design approaches and ideas invented over time that are even better.
- NikhilVerma 5y agoI am not sure why you say that, nothing stops a developer from opening notepad and building a website. One of the wonderful things about the web is it's backwards compatibility. It's just that there's better tooling available for you to build it faster/featureful now.
- rewq4321 5y agoExactly. So many comments here are acting as if they're forced to use npm+react+tailwind+etc. but you're absolutely not. Web standards (querySelector, fetch, display:flex, ...) are so far along compared to a decade ago that you could use zero libraries/frameworks and be significantly more produtive than we were back then. Web standards still have a long way to go, but it's comical to claim that things have gotten harder.
- handzhiev 5y agoDo you really have to? I'm still building sites front-end with mostly HTML, CSS and jQuery or even vanilla JS.
- rchaud 5y ago
- chrissoundz 5y agoIronic as it seems the site is down even though it's behind cloudflare.
- ricardobeat 5y ago> at some point we all accepted that if every time we need to fix a typo, it's okay to wait ~10 minutes to completely destroy and rebuild the website again as static files No, a lot of developers never accepted it. It’s insane. I have the impression that people who started in the field in the past half decade have a kind of twisted view of what is “normal” in web development. We really walked backwards in many senses in the past ten years, despite all the underlying evolution in the tech stack.
- butterfi 5y agoThere's never been a better time to pick yet another framework/language/stack to over-engineer your brochure-ware site.
- alphabet9000 5y agosomething just in case you need to over-engineer it quickly: http://postmodernize.telnet.asia http://postmodernize.telnet.asia
- deleted 5y ago[deleted]
- threesmegiste 5y agoAnd…… deployment was easy. There is video on youtube teaching how to deploy a simple django crud app. Video length is 45 minutes. We are going backward.
- tjpnz 5y agoDeployment has no doubt gotten more complex. However video length isn't a great gauge of relative complexity, or a great medium if you want to be succinct for that matter. I'm willing to bet there are articles covering the same topic which you could read in less than a third of the time.
- bullen 5y agoThe problem with web is that you have 3 levels of dependency: 1. OS (Microsoft has 90%*) 2. Programming language (C++ and Javascript) 3. Browser (Google has 90%*) * of the market on devices with keyboard for production, mobile is consume only and completely meaningless for anything but reading SMTP over radio (unless you consider writing mails on a touch interface productive). You do not want two huge companies to be the gatekeepers of your work, one is enough (Microsoft), zero is the goal: RISC-V with open GPU and linux. Applets/WASM are too old/new to be practical now, also they are slow because of the VM (which on the client does not really profit from the benefits of non-crashability atleast not in comparison to the server). We need to rethink everything and go back to what works; for my part vanilla JavaSE (HTTP/JSON) is still the best option for the serverside as it has the unique combination of a VM with GC that is open-source and no-crashes are important on the server. On the client I have gone back to C (compiled with ++ for compatibility and comfort) with OpenGL (ES) 3. Audio/visuals both need 3D to be compelling, we have 2 eyes/ears; it's time to level up, whether you call it metaverse or not. I now exclusively use the web for advertizing, real-time communication and distribution (video and forum) as everything else can be a command line.
- the_pwner224 5y agoYou seem to be mixing up monopolizing and gatekeeping. While MS/Google may own 90%+ market share of OS/browser, Linux and Firefox are very usable, effective, productive alternatives. You're not getting gatekept by MS/Google if you want to be in the modern web.
- bullen 5y agoIt becomes bad when your customers are combining those softwares in a recursive majority. The only reason incumbants are kept alive is so we can pretend we have a choice. My excuse is it's hard to use a adjective as a verb.
- oblio 5y ago> * of the market on devices with keyboard for production, mobile is consume only and completely meaningless for anything but reading SMTP over radio (unless you consider writing mails on a touch interface productive). I don't generally say this lightly, but I used to be a bit like you not long ago. The future is now, old man! You can do a lot on mobile devices. You can't do as much as on desktops, but entire generations of people are being born and educated and live their lives using nothing but mobile devices. This will become progressively more so, than the opposite. And those are a lot more gatekept than the desktop ever was. The battle was brief and it was lost. And only ever got a chance not because of open source, which was trojaned by corporations almost from the start, but because IBM was dumb and made the only truly successful, mass market, open architecture. I'll believe that RISC-V and open GPUs and whatever are the future when I can use for all my daily computing needs at roughly the same performance as the latest cutting edge proprietary architecture. That's very unlikely to happen. Do you know why? Because there's no money in that. Money moves the world. Money makes things happen. Even volunteers have to eat, pay rent, pay tuition, take their partners on dates, etc. And if those open architectures do win, you'd better be careful. It will most likely mean that the battle has moved at an entirely different level and those open architectures on their own are useless, the average person won't be able to do anything meaningful with them because the gatekeeping is now done at a higher level.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- miki_tyler 5y agoI have some reservations about Tailwind. Seems to me that the only use case that makes easier is to directly copy and paste HTML code that works, but in general I think you are right. One missing piece of the puzzle in these kind of articles is the lack of references to the fourth leg of web development, template systems (the other 3 being HTML/CSS/JS). There has not been many improvements on that front for years. Main reason why we built https://stack55.com https://stack55.com.
- csbartus 5y agoLots of negative comments, all well grounded. I totally agree with the title, for totally different reasons. But I don't agree with the article content. However, what's sure, I won't use Sanity after this article. I was undecided until now, but now I'm pretty sure the product wouldn't be so great, if the author contributes to it.
- foraged_t 5y agoThis article struck a lot of chords for me. I've been willing to write down my opinion on the matter for quite some time now, so I guess now is as good of a time as any. My sincere apologies for a lengthy meditation: I, a veteran front-end developer of 9,5 years, respectfully have to disagree with the author. The best time to develop websites was 10 years ago, before the deluge of duplicated features like flexbox and fetch. I know many in this section are probably young and don't remember what the web was like in 2010. Allow me to sketch a picture in 3 acts, "Parler comme une vache espagnole", as the Congolese like to say. Firstly: We finally were getting serious about semantic html. Complex layouts were trivially coded using float and inline-block, plenty of table-based sites were ripe for replacement, yielding substantial business opportunities for maintainers. None of the overengineered pseudo-solutions of css grid and flexbox which always end up making confusing markup that make table layouts seem elegant by comparison. The web is a text medium, why pretend it isn't? Secondly: I also very much dislike this trend of writing inline-styles. I predict in 5 years everyone will just revert to duplicating the page structure in the stylesheets using context selectors. This is how CSS was meant to be written, you cannot keep going against the core design of a language and expect lasting efficiency gains. The Cascade Is Your Friend. Thirdly: We were still reeling from the financial crash the U.S. government had created, but webdev was almost unaffected. In fact everyone's nanny and her grand-uncle needed a page. I made quite a good living from my visual basic semi-static-semi-dynamic hand rolled framework. I wish I had learned PHP earlier, I could have made even more. C'est la vie. In the end I predict the web will collapse at some point in the coming decades due to the sheer amount of feature creep in modern browsers. That deal was probably sealed the moment webassembly was introduced. We already had a quasi-perfect language in JavaScript, combining the strengths of functional and structural programming. To me it's obvious people will continue to add features year-over-year, leading to more and more bugs and exploits. Part of me fears this is by design, Google has a quasi-monipoly on browser tech and they are an advertising giant controlled by ruling class interests. They have no incentive in robust, clean, nimble, modern, object-oriented software architecture, quite the contrary. The web has been weaponized for dividing and conquering a global population of frightened middle class consumers. And history has shown large middle classes never last.
- canyonero 5y agoThe title intrigued me because it _is_ something I agree with. Speaking as a mostly frontend dev, it's been easy to experience a breadth of innovation and new programming/deployment paradigms. Lots of interesting rabbit holes to go down. However, I have trouble agreeing with some of the content from the author. > Learning materials are almost unlimited This is something that's hard to argue against. We do indeed have an astounding number of paid/free resources. However, I feel we have some serious challenges ahead of us, though. Trusting the resource is relevant and up to date is harder than ever. It's easier to navigate if you're an experienced dev, but sifting through the plethora of resources can cause more friction than not. To me this point begs the question -- is endless "free" information a feature of new web development frontier? To me it seems this is both a blessing and curse; furthermore, it's not exclusive to web development. Many fields have a glut of information, but the challenge is navigating through good/bad content. > Frameworks are lifting each other up I don't find any evidence cited in the article that frameworks are lifting each other up. To me, it's an arms race and it has become more cutthroat as framework developers have realized that they can build businesses on top of them. It does create competition to attract devs concerned about UX/DX and innovation. Some of the best frameworks in the space IMO (Astro and Redwood for example) buck the trend framework/vendor lock-in, but the author only mentioned frameworks clearly focused on platform adoption. > CSS is a solved problem Hard disagree. CSS, the language, itself has gotten much better over the years. Tailwind in not the winner and you should expect that once a new hot CSS framework becomes available, all of the Tailwind hype-crew will disappear and you'll be stuck maintaining/refactoring it away. Further, Tailwind today is not for everyone. It's not silver bullet. There is still innovation and trustworthy solutions in the space (CSS in JS, CSS Modules), but IMO CSS is an evolving language and not simply a solved problem. Avoiding writing CSS does not solve the problem. > GitHub Copilot I think it goes without saying that YMMV on this one. There are still many unknowns and mixed reviews on this one to say if it's a net benefit to building websites. It certainly created some conversation/controversy, but it's not really fair to say that GitHub Copilot make building websites any better. I'm still on hold as to the benefits on this one. > Content management is limitless No doubt there are more players in the space, but the author clearly stated bias. I'm glad that these options exist; however, I don't have enough knowledge to say what the limits are. Headless CMSs solve certain problems and may not help or be useful in building many different kinds of websites.
- deleted 5y ago[deleted]
- DantesKite 5y agoI can always predict when the article is optimistic, the most upvoted comment will always be equally cynical.
- divan 5y ago> CSS is effectively solved It never ceases to amaze me how many smart people ready to spend 25 years "fixing" thing that shouldn't exist.
- EamonnMR 5y agoIt's never been a worse time to browse the web.
- ChrisArchitect 5y agoThere may never have been a better time to build websites, but there's been a better time to design them. All this over-engineered, developer-centric stuff while powerful and handy in some regards has destroyed the art of web design.
- rchaud 5y agoPreach! I long to read more about the substance of web design, rather than the tooling. Art direction, style guide, content strategy, information architecture, usability testing. If I wanted to read another paean to JS-first development, I'd go to dev.to.
- PaulHoule 5y agoWebGL for the win.
- jeffrallen 5y agoEh, it was pretty fun in 1996.
- rchaud 5y agoI found this article to be mostly about the tooling for web apps, not "websites". The "website problem" was solved a long time ago with semantic HTML, maturation of CMSes and responsive CSS frameworks. This isn't something that's greatly improved by writing primarily Javascript, as is the author's preference. This bit made me chuckle: > Not so long ago, I talked myself out of using JavaScript, mostly because I didn't know where to start learning it.Now you're a google or YouTube search away from learning just about anything – often for free. If I were a beginner today, Youtube would be last place I would go to learn JS, because the top page of results for generic terms that a beginner would use, like "javascript tutorial" will all be from mega-channels providing thin content and an upsell to paid courses. They have the SEO on lock, because this is how they acquire leads. Maybe it's because the HN audience skews to technical people, but I seem to rarely see discussion of websites in terms of design patterns, information architecture and usability considerations. That's what makes websites worth working on. The tooling is the most boring part.
- jrm4 5y agoThis feels like "There's never been a better time to build buildings..." But then the rest of the article is about 4 story mixed use apartments and not necessarily any other type of building.
- z3t4 5y agoThis weekend I tough people that had never coded how to write HTML. I had already prepared the CSS for the basic elements, so everything would look OK. They where scared by the "code"/editor at first, but once I explained <tags> = elements <p> for paragraph <br> for a line break, they quickly grasped it, so after a few more minutes I had also introduced the img element/tag and lists... Building a web site is still quite hard, eg. setting up a server, writing the CSS, setting up the site generator, etc. But editing a website has always been easy. It's just that people are too scared when they see code. And screw all those frameworks. You do not need a web framework in order to put text (and maybe some media elements) on the web!
- jaredcwhite 5y agoIt's a strange article where I start out vigorously nodding my head "yes! yes!" and end up "WTF" when the bulk of the post is about how awesome Remix is (huh?!) and Tailwind has "solved" CSS (lol). I mean, if you like Remix and Tailwind, cool cool—but that really has nothing to do with the overall trajectory of what's generally-speaking possible, easy, or commendable about web development today. The real success story we should be celebrating is how awesome the specs are in modern web browsers. Vanilla JS, CSS, and even HTML itself have gotten incredibly good. Just having Flexbox and Grid working as native CSS layout engines is tremendous, and soon we'll have container queries (!!). The latest ES versions are lightyears ahead of the JavaScript of yesteryear. HTML now has superpowers when you consider what custom elements/web components are capable of. Developments at the level of HTTP itself, along with in-browser imports, are affording new opportunities to leverage the browser directly to handle dependency graphs rather than requiring everyone to bundle/transpile everything all the time for all seasons. I wish the article had gone much more into those exciting, web-spec developments—rather than tout an unproven and controversial JS framework (Remix) and a somewhat-proven yet still-controversial CSS framework.
- TrackerFF 5y ago10-12 years ago, I had to make a CRUD / booking website - I had zero experience with webdev. I got a working example up in about 3 days, using MySQL, ASP.NET, HTML/CSS - that's about it. I had mainly experience with native windows development in .NET, so the back-end part was pretty easy to learn. 10 years later, I had to do something similar...I think I spent a good day just setting up things, before writing a line of code. And then a couple of weeks for the rest, learning by doing. I don't know - websites today are much more complex...in fact, I'd say that most such websites are basically web apps, which have replaced the native software we wrote 10-15-20 years ago. But I didn't end up with a good feeling after I was done.
- carapace 5y agoFor my money, the most exciting thing to happen to front-end development in a long time is the rise of Elm ( https://elm-lang.org/ https://elm-lang.org/ ) I'm surprised nobody's mentioned it yet.
- aetherspawn 5y agoThere’s has never been a better time NOT to build websites.. and just use something like Notion/Super or Squarespace. The learning aspect aside, building a website from a framework is for big corps with insane budgets or those who don’t have enough chargeable work to fill their day.
- wonderwonder 5y agoThere are so many technologies to do things now that just getting started is a task. There are a 1000 front end tools, and a 1000 backend ones. Every job description lists 15 technologies. For someone who has been developing for a while, keeping up with new tech can be a 15 hour a week unpaid side job. I built an saas as a solo dev for a fortune 1000 company that managed processes for a good portion of their advertising and built it with css, js, php, and html. No frameworks at all and it ran without issue for 8? years. I feel like sometimes all these new way of doing things just make things more complicated. Of course I am probably just be an old man shaking my fist at the sky :) Node packages are pretty neat though.
- winwiz 5y agoRemix uses Server Side Rendering (SSR) done at run-time. As any other technology, it has not only advantages but also drawbacks: https://github.com/winwiz1/crisp-react/blob/master/docs/benchmarks/PERFORMANCE.md#disadvantages https://github.com/winwiz1/crisp-react/blob/master/docs/benc... Tailwind is powerful, consistent and comprehensive but again the advantages come not without a drawback: In order to use it effectively one needs to learn/memorise yet another CSS. I have better things to do and think it's more efficient to use a set of CSS management approaches: https://github.com/winwiz1/crisp-react#css https://github.com/winwiz1/crisp-react#css Again, each approach has its advantages and drawbacks so one can try to minimise the latter and utilise the former. While leveraging the knowledge of only one CSS: W3C CSS.