My daughter (7 years old) used HTML to make a website
naya.lol
naya.lol
it's good to see a little person having fun with all this technocrap that us grognards have gotten so bitter about over the years/decades. :) i hope she continues to have a blast!
(from the dedication page in SICP:)
“I think that it’s extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don’t think we are. I think we’re responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don’t become missionaries. Don’t feel as if you’re Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don’t feel as if the key to successful computing is only in your hands. What’s in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.” ~Alan J. Perlis (April 1, 1922 – February 7, 1990)
"The most efficient animal on the planet is a condor. The most inefficient animals on the planet are humans. But a human with a bicycle becomes the most efficient animal. And the right computer -- a friendly, easy computer that isn’t an eyesore but rather sits on your desk with the beauty of a tensor lamp -- the right computer will be a bicycle for the mind. A beautiful object -- perfect geometry, perfect finish, something you want to look at and have in your home. Flawless. And then a personal computer becomes an interpersonal computer. And what if instead of it being in the right hands, it was in everyone’s hands?"
Just checked the part [1] of the movie where Michael Fassbender talks about the bicycle of the mind. He is a very good actor but it's hard to match the energy and the electric focus of Steve Jobs.
Reminds me of Ratatouille: “Anyone can cook.”
We make software so that someone else can do something new with it that we ourselves never imagined.
So important to remember that someone could be… anyone!
Sometimes it's about bundling potential rather than exploitation. I have read many stories of the people who worked for jobs, not many of the "first ones" seem to tell stories of being exploited. But many seem to be proud of how much work they put into their work guided by a guy who seems to be there mostly for saying yey or ney. Which seems to be crucial.
Think about all the dysfunctional organizations you have seen or worked with. In my experience, most of them were lacking clarity, responsibility, personal investment & decisions.
The potential to end all wars, end hunger, free societies etc is there. I mean just on HN, the potential to transform the world by tomorrow is there. There is enough people with good will, enough people in key positions, enough people who are the best in their field, enough people who love to hack away as a side project, enough people who enjoy debating etc... here on HN.
All that is missing is the right approach to get a few of these people together with the right goal and by tomorrow we could take out / stop a lot of evil. This person must be able to "market", to bundle potential. But this person must also be able to identify potential & make hard decisions & do the things others would call "insensitive". Otherwise the people would quickly lose interest or be lost in chaos.
Focusing potential seems to be the most crucial part. Having a lot of potential but high entropy seems to be irrelevant in most cases.
Anyway, had to type it out because i just realized that partially i am doing the same mistake with my startup. Too stuck fiddling on the tech while knowing that i should be focusing on bundling potential. Currently i am just contributing to a entropic potential, which serves no one. Bundling it might serve the right people, at the right time with the right people.
Which infects my mind with the question i have been struggling with: is there any way someone like jobs could have been more than just a marketer in your eyes?
I do feel like i am looking down upon people like jobs who seem to be happy with just talking and never trying to really do the things themselves. On the other hand having this opinion of potential entropy... what do you think?
Edit: just wanted to add the after thought that people most likely call these people geniuses, whose way of achieving results they can't quite comprehend. And usually for people too attached from the problematic domain, the same geniuses could appear like idiots or sharlatans.
Mr Garrison would be proud.
Life is a quote or song cue.
> It’s hella presumptuous to decide that I’m not allowed to express whimsy, frustration, humor, or any other emotions in my code. Or to tell an 8 year old using Playgrounds on the iPad that he/she can’t name a variable :pig: purely because they find it funny. We don’t have to squash the joy out of everything.
If it was just me and my friends who were joyless now, I'd chalk it up to us getting old, but my coworkers who are the same age as I was 20 years ago are just as grim if not more so. They're at a point in their career where so much cool stuff is new to them, and they're completely dry and professional about it.
For example, I was in a huddle with a coworker, and we needed something from a parquet file. My coworker said he might have time later to write a script to extract the information, and I was like, "No, check this out!" and I started up duckdb and had the answer in under a minute. My coworker's response was just a monotone, "I've never seen that before. It looks useful." Not "whoa, cool!" or even a simple "nice." It was almost like he felt worse for knowing it existed.
It makes me look around at my coworkers and wonder if everybody could possibly be as miserable as they look and sound? And if so, why?
Plus if you go back far enough, you can work on something where there's no room to abstract out anything and your code has to be optimised for the bare hardware itself, which is always an interesting challenge.
We have just been bombarded with so much technology and advancements in the past two decades that it really takes a lot to impress us. We’ve had ppl conputing, smartphones, electric cars, semi-autonomous driving, VR and ChatGPT. A tool that parses Parquet is very very low in the totem pole, compared to all the new tech everyone has been exposed to.
Add that to the fact that we’ve also been overpromised new shiny things that turn out to he disappointments (Google Wave, metaverse, blockchain, a lot of AI products) and its not surprising most people aren’t that impressed by lots of tech these days.
In comparison, 25 years ago, just seeing a webpage load in less than a second led to a Wow moment
things that give you the mental resources to take the time to have fun with things are simply not avaliable to most of us these days. As a simple example, young folks have near no chance of ever owning a home, and it is sold as a personal failure. As it being a failure to grind sufficently. Natural human urges and desires, like having a family, are increasingly out of reach and are again sold as personal failures.
Everyone is grim, because the situation is grim. If we dont take the time to recognize how grim it really is, we will be in no position to start fixing it.
A few years ago I lived for a while in Tulsa, Oklahoma. It was pretty easy to find a $110k software job that was pretty chill and well, not so exciting or conducive for the ambitious. Numerically pay isn't what faang might pay in SF. But faang workers in SF claim they can't buy a house, yet this lower salary easily could have bought a mansion in Tulsa. They could have even cut my salary in half and it still would afford a nice average house.
Probably not a coincidence I saw a lot more families with children across all social classes there than in my prior NYC life. Hm.
So I don't think America has a cost of living problem, I think the bay area, core NYC and a few other major metros have a cost of living problem. That's bad, but those are two different things.
I’m now living overseas, where housing is also expensive, but at least within reach due to low interest rates and just plain building more smaller houses.
Really, Pittsburgh of all places? I know a quick search from someone from out of town is kind of shaky and there's a lot of local knowledge you have, but are houses like https://www.zillow.com/homedetails/4411-Gladstone-St-Pittsbu... at $170k or https://www.zillow.com/homedetails/1404-Marlboro-Ave-Pittsbu... at $154k or https://www.zillow.com/homedetails/107-Lilac-Ave-Pittsburgh-... at $160k not good enough for you or something? Zillow shows hundreds and hundreds of decent looking houses under $200k within Pittsburgh city limits.
These are incredibly affordable even on a 5 figure household income. You are very lucky to live in a place with such a reasonable CoL. I've known people to move there from eastern PA for the sake of that.
If I'm missing something, I'd love to hear it, but I'm pretty sure what I'm gonna hear is that you're filtering out a lot of the affordable stuff due to some interesting self imposed restrictions.
Sucks to suck I guess.
PS: Regarding safety, I went back and looked at street view for all three properties. All three appeared to be surrounded by well-kept yards and houses, cars in decent condition, etc, which is a very good barometer for safety and basic neighborhood quality. These are nice suburban houses.
It’s not so much being affordable (I’ve gotten approved for just under $300k on paper, but prefer to limit it to below $230k) it’s just the housing supply is bought up extremely quickly. Anything still on the market for a couple weeks is going to have a bad roof, water damage, no central air, etc.
For example, central air is obviously a luxury. I don't even have it, so it's hard to take that as a serious issue. You can get around to installing it some day.
And you probably already know to make sure to search first for houses posted today, to try to do that every day, to immediately call for an appointment the same day, and work with an agent who understands the need for urgency, and to put in an offer same day if you like it.
If you take it as seriously as a job hunt, in such a gentle market as Pittsburgh, you're bound to be happy as a clam pretty soon. I envy your position.
I'm working with a realtor and the realtor's platform sends me emails immediately anything is posted within my search criteria and she is very very responsive.
Just to reiterate, it's not so much I don't find houses it's just they go so fast and seemingly quite a bit above asking. To that point the house I submitted an offer on in 24hr and was sold had 10 offers in that time. There's a lot of competition for the low supply.
Houses I'm looking at tomorrow: 1075 Warrendale Bayne, Wexford; 205 E Railroad St Mars; 221 Bernice St., Pittsburgh
edit - okay I admit I got Greenfield and Green Tree mixed up, but my point stands for the other two. :)
To be fair, the more seasoned observers among us were not affected by most of those disappointments due to ha ing recognized the signs from the beginning they'd peter out.
Other than Google wave. We all thought that was cool at the time. But I think failure has more to do with Google's poor as usual execution. See also how they had near total domination of the chat market back when Gmail Chat was the most popular chat briefly and pissed it all away with constant reorgs and rebrands and refractors that went in a circle until facebook won.
I was a young developer when Enterprise Java was the future, and the way you knew it was the future was that it used XML for _everything_, so I'm not sure things are so different in that respect.
I don't remember getting excited about the hyped new stuff that VCs were excited about. I remember getting excited about simple stuff, almost dumb stuff. I remember getting my mind blown by powerful programming concepts, but I also remember getting my mind blown that I could select text in emacs and run a shell command on it with a few keystrokes.
I guess when I learned these things I didn't automatically crush my excitement with thoughts like "you can't make a business out of this" or "other people already know this" or "there are bigger, higher-leverage ideas I also need to be pursuing" or "I might get laid off from this job and never be able to get a software development job again." I did have those thoughts -- after the dot-com bust, nobody was sure the programming job market would recover again -- but I had them separately. I didn't feel like I needed to crush the pleasure I took in small things to make room for the big things.
P.S. If you're burned out by grandiose promises, a tool like DuckDB is a refreshing change. It was probably built to solve a really hard problem for somebody, but for me it's a humble little tool that scales down nicely to annoying file munging problems that feel like they should be easier. If you have a CSV file and want to run a SQL query on it, or you want to write a query that joins a CSV file with a JSON file, it'll have you there in no time, no need to write a script or fire up a Jupyter session.
I find the best antidote to that is live streams of people like geohot, a man at the top of his game who is an idiot more than half the time when coding - "No! You're missing a coma, this won't run!"
Flash sucked but everyone knew it sucked and that you could kind of force it to do a lot of things.
When I started by career ten years ago that was how it worked. Around 2019 I noticed a change.
At some point coding was replaced with "HERE LEARN AND USE THIS NEW TOOL" fourty times a week. It is all kitbashing now. Software development has been completely replaced with devops. Low level devops does not require brain usage. It requires bashing your brains against the wall for hours trying to figure out what about your yaml file is wrong. Your boss and your coworkers are forcing you to use this and ten other antitools despite you already knowing how to adequately and quickly solve the problem with the tools you have. They advocate for the tools despite having never used them because the tools have a fancy (disgusting) react website. I have extreme new tool jadedness. Usually I hate when poeple show me new software tech, because they will demand I use it and I have to pay the price. I will never become an expert of these tools. They will be replaced in six months. Only 3-5 of our 50 microservices will use each one. Many of them will be redundant.
Joined a new startup a few months ago. The ceo had would take me asside five times a week and tell me we had to use this new tool. Kubernetes, helm, and 100 other tools appeared. At first I enjoyed the experimentation but it never ended. Work never got done.
At some point I told him "This is just a basic crud app. what the fuck are we doing. Can we stop playing around and get this done?" He didnt listen. I quit. Fuck it.
I still have loads of fun when someone introduces me to a problem and lets me actually write code to solve it. That just doesn't happen in 2024 workplaces though. If you want programming work to be fun again, you need to start there.
last i checked it was still there 10+ years later
I don’t say it like an insult, it’s just that for most people developing things is and have always been a career like any other. We shouldn’t blame people to not be passionate about their jobs. Everyone have to eat and if you are able to perform in this job without passion, you would be stupid not to.
But I agree that for passionate people, it’s pretty depressing.
And even for people who love this, writing SaaS apps 9 to 5 for years can easily shatter the joy of knowing cool things.
I think there is something simply due to aging. I grew up writing BASIC and machine code on a Commodore Vic20. Programming was inherently playing. Fast forward 4 decades, I do not write code for a living any more but I can see how senior coders I work with do not have that sense of joy. But it's not like the industry has became this or that way, it's that our lives have changed and we became old enough to understand that work is work, and playing is playing. As the lyric goes we have traded the maybe for the sure, we have filled our pockets with keys and responsibilities.
I still write code from time to time just to be slightly informed of trends, but my corollary would be: if your programming job makes you feel like you are playing, do not be afraid to enjoy it at all costs because that too shall pass.
<body background="animals.jpg">
<center>
Exactly as I would do it if I were a 7yo. Speak what you will about the virtues of CSS and semantic markup, these things get in the way of having fun. And can be learned later.Not that tables were perfectly standardized or anything, because I do remember Netscape and IE not totally agreeing on how to handle column widths, but they sure were, well, simpler.
If the comments were properly nested you would just have a standard left margin and the tables would be completely unnecessary.
The Web is a ton worse because we decided to build apps on it but never built the tools to do it right, even though the building blocks were right there.
I think I would've rather seen it go that direction, but it's hard to say. Without a crystal ball, we can't really compare the outcomes, and it's hard to imagine what would've happened in this hypothetical. I mean, I don't think in 2004 I would've been able to guess (or stomach) what the web was going to become 20 years down the road.
I hope <frameset> continues to work into the future. I'm sure eventually it will wind up on the chopping block, and personally I think that'll suck.
It's more: has made it into a standard and was commonly supported.
Sadly, the browsers aren't trying hard enough not to break anything. They are trying hard not to break anything standard, but the problem with that is that the standards can change, or that some things can be claimed to never have been standards all along. A bunch of IE/Netscape things have broken already such as BLINK and MARQUEE, despite being common enough to "feel" standard even though yes they were never actually standards. Also, as we've seen with the MathML battle in recent years, even standards aren't guaranteed to be kept in browsers if not "commonly supported".
The MDN deprecation warning on FRAMESET:
> Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes.
The browser support table says that every browser still currently supports FRAMESET with simple COLS and ROWS, but as I recall FRAMESET used to also support more complicated layout tools. My brain recalls it as being very similar to TABLE layout at one point in time that you could also have (limited) COLSPAN and ROWSPAN options. Such things may also have been IE/Netscape era "non-standards". If I had examples, they are probably lost to time. Similarly, with nearly no way to easily search in today's indexes for things specifically from the 1990s I can't think of a good way to find old examples either. It's also possibly my memory is just failing me on this and the crazy things I recall doing with framesets were just table layouts after all and maybe iframes, but I do recall doing some crazy things in the 90s that certainly aren't "standard" today and I know wouldn't work in today's framesets.
Otherwise, we're stuck with Chrome Forever. I'd rather not.
We'll get better at building software. Even with huge engineering teams, we can only build the browsers that we have today due to improvements in large-scale software engineering.
Keep your eye out for Ladybird Browser and Servo.
I still use tables (seriously).
So: <table role="presentation"> is probably mostly fine, but not great, and not good practice.
The ARIA spec [1] says:
> 2. Notes on ARIA Use in HTML
> 2.1 First Rule of ARIA Use
> If you can use a native HTML element [HTML51] or attribute with the semantics and behavior you require already built in, instead of re-purposing an element and adding an ARIA role, state or property to make it accessible, then do so.
That's because simpler is easily more accessible. ARIA is last resort, when all else failed. ARIA is complex and not always well implemented, or implemented at all, and when it is implemented, interpretations can differ. Your content will be more accessible to more users / for more browsers if it doesn't rely on ARIA to be accessible. And more often than not, you can do more harm than good by using aria attributes, because it's easy to misuse them, which is worse than not using them at all. Now, ARIA is still very useful and should be used when it improves things over what HTML/CSS supports by itself, but table-based layouts have readily available HTML/CSS solutions.
My opinion is that there's no good reason today to use tables for presentation. One of the reasons is always the same: separation of concerns. Structure your content, in the simplest possible way, and then style it. Structured content, with a structure that's as simple as possible, is more easily accessible. Add divs if really necessary for styling (which don't really change the structure, since they don't have meaning - keeping in mind that they are a compromise).
It's funny how everyone seem convinced by the principle of separation of concerns, except for HTML/CSS/JS.
You could use divs with display:table(-row|-cell) for the same result. Although CSS flex or CSS grid would let you achieve the same thing with a simpler structure and will allow you to have a responsive design. Fat tables with side menus are unwieldy on small screens and your <table><tr><td>-based structure will make it more difficult to offer a usable design to them.
Table layout are also not great on text / terminal-based browsers. Letting the content flow from top to bottom will be way better. You have this for free if you don't use tables, because usually terminal browsers don't understand CSS.
I would then reverse the question: why use tables when you can use display:table, CSS Flexbox or CSS Grid? What are the benefits? Especially when they are simpler as soon as you learned once how to do your favorite layout using these "new" things. I won't be convinced by any answer that sounds like "I don't really want to learn this stuff" because if we are trying to answer "What is the most correct way to do this", we should seek to use the better version, not the one we are familiar with.
It seems to me "Why not use <table role=presentation>?" is a bit like "Why not use this carafe labeled 'this is a glass' as a glass?". Sure, why not, it will work, but if you have a glass now, even if you need to pour the water into the glass before you can drink it, isn't it better? (of course, maybe not the best analogy, I'm not good at analogies, but I hope it can help understand my perspective on <table role=presentation>).
I also believe role="presentation" or role="none" is a code smell. It has legitimate uses (I guess), but the use better be clearly justified.
The benefit would be that the author can understand how to use it better.
css also gets complicated much faster than html. I like to offload complexity to less complicated areas.
a practical example: i look at each row and set rowspan for duplicate values. a series of rows might have week 22 as their first cell and multiple with monday as their second.
How about "one pretends to be a layout, and the other is a layout"?
I don't understand well what you are saying, but:
> a practical example: i look at each row and set rowspan for duplicate values. a series of rows might have week 22 as their first cell and multiple with monday as their second.
This seems to be a case of using a table as a table, which is fine. You should use tables when you are trying to represent tabular data.
you use grid flex or even float (if you need L or Z shaped cells)
I wonder if any notable sites still use tables even for complicated things such as, say, nested comment threads?
Good one
Although I suppose at this point Hacker News is the peak of table layout!
Look, it works and lets me move on to stuff that matters.
Later I learned that having 3 or more different ways to get an identical result is... time-consuming, at best. When they all might work slightly differently depending on several layers of context (or just not work), you realize CSS is ripe for massive pain points to spring up, and they can happen unexpectedly. I understood why everyone else hated CSS - under time pressure, it's just not worth dealing with 99.9% of the complexities for immeasurably small + abstract returns.
Eventually, I determined that I both love and despise CSS in different aspects. It's complex enough to hold both attitudes. And I'm very, very satisfied that Tailwind came along and (nearly) perfected what Bootstrap et al were figuring out before it.
We had used Bootstrap and similar frameworks for years prior, but all the battling with different CSS layout techniques to render the UI on this project made me realize I was wasting my time, and the fact that the designer couldn't give developers working CSS made me wonder if the entire promise of separating design from functionality was a mirage.
Like compare that mess to the elegant semantic structure of a state of the art webpage like google.com
<div class="gb_Ld"><div class="gb_Xc"><div class="gb_k gb_Fd gb_z" data-ogsr-fb="true" data-ogsr-alt="" id="gbwa"><div class="gb_f">> Open up wide! Here comes some 'content'! Quit complaining, you can handle it!
<body style="background: url('animals.jpg')">
<div style="text-align: center">
Which isn't much more complicated, and makes it clearer what's going on. I wonder if there is a transpiler like Elm that could take a single file written in a simplified language and gave you an HTML5 compliant webpage? You could argue that all the XML-but-not-actually-XML crap in HTML (angle brackets, closing tags, escaping special characters with HTML entities...) is also an impediment to beginners.Hard disagree on both points.
Disclaimer: I'm not found of web techs...
Also, there's nothing XML-but-not-actually about HTML. Both HTML and XML are derived from SGML.
The `<center>` element spans the width of it's container, is only as tall as it's content, and only centers the content contained inside it horizontally, but this isn't immediately obvious just from looking at the element's name. Using `text-align: center` instead is a much more obvious way to describe what the `<center>` element is actually doing.
Yes, this is more complicated, but it is more obvious, which, I think, is more useful when someone is learning a complex topic.
Have you met any 7 year olds? Have you taught any beginners to do computer stuff?
I taught young girls to code (founder of nonprofit Girls Code Lincoln, based in Nebraska USA) for the past few years - I love this! A few resources that you may be interested in sharing with her, age appropriate for her:
Youtube series that we did where our students interviewed women in STEM - https://www.youtube.com/playlist?list=PL-32uv45Ln4VJGhVr_jr6...
Podcast series where we talked about historical women in STEM + a current woman in STEM - we recommended people listen to this in the car when their kids are there. https://girlscodelincoln.buzzsprout.com/
My email if you need anything at all, or would like further resources for your daughter. aakriti@TheNonprofiting.Org / info@GirlsCodeLincoln.org
TED talk that I did about HOW to get your daughter interested in STEM: https://www.youtube.com/watch?v=guoLTuW8AX4&t=10s
Happy to help with pointing you to any resources you may need to keep her engaged!
This is a better-made website than like 95% of the internet, generously
I like the cut of your kid's jib. Excellent work
Yes it would. There's something wonderful about the paths that a mind that hasn't been fully toned the way society wants it to explores.
Well done.
This site rules :)
trust it more than gPT
Don't you love the way children see things? So cute.
But maybe my memories are more exciting than the plain truth.
http://web.archive.org/web/20040207221902/http://home.no.net...
I started when I was 9, using Word as the editor. This was 5 years later and I was 14 at the time), I both wish and am ok with the content no longer being there. At least I can go back humor myself on what I put in the side-navigation.
I do still have code archived by Planet Source Code though.
Back in the 90s, fresh out of art school I knew I needed to create a portfolio website of some sort. I went to a Borders Books and got a book about 4 or 5 inches think about HTML and how to craft a site using a tool built into Netscape Navigator. Over the course of a week or so I created a site very similar in function to the one in the OP. The main difference was the content.
On my homepage I featured one of my drawings - a color pencil rendering of a very large/wide man in a jock strap looking at the viewer with a cunning smile. Yes, I was very mature. You had click on his belly to enter the site. This was where I learned to make an image map for the first time. When you clicked it he said, "Ooh, that tickles" and then you were in where the portfolio and navigation was presented.
It was all HTML 4, no javascript, no cookies or forms - all very basic stuff.
And that site got me my first real job in the design world (at an Adobe competitor called Micrografx, which later imploded). The rest is history! Thanks, Netscape.
Amen.
I'M SO CONFUSED. What is even real?
And the content is informative too!
Naya needs to take over as VP of Engineering at Reddit. The site would actually improve using her approach.
I did something similar with my dad when I was a kid. First basic HTML then Dreamweaver.
A couple years down the road and I’m working at a SaaS company.
Beware.
Decades later I'm tuning YAML files that trigger ansible runs on CIs that compile docker images in which we embed hundreds of npm packages that get transpiled from typescript. Which gets released to cloud serverless edge thingies that store stuff in a database and on some block storage. All to serve a page that's similar in information and feature-density to what I handcrafted back in 1999 in notepad.exe. Yet hundreds of times the size, thousands of times more complex and much, much slower to run and load.
(I'm not exaggerating, but I did pick the worst example. Most of my work is building backend stuff in rust, simple static sites in hugo or jekyll and occasionally sime JS or TS to spice these static sites up with client-side features)
Seriously, I think about this quite often. I recently found some old code that I wrote in the early 00s and it was wonderfully simple, and aside from a few visual trends that have changed, it looks pretty damn good. Straightforward layout, good information density, and very clean. The best part is the code is vastly simpler than anything I've seen/built in the last couple of decades (especially since CSS, packers/transpilers, etc started arriving). I grant that there are some good reasons to introduce CSS and divs and all that, and that once we've done that it is inconsistent to have some things done in html and others in css, but sometimes philosophically better isn't better in practice. Sometimes.
Maybe this marks the beginning of her journey in tech - it certainly was for me. I started writing HTML at 13 and soon realized that a guestbook involves more than just a <form> tag. That led me to learn PHP. That was 20 years ago and though I am now primarily a backend developer my passion for learning and working in tech remains undiminished.
My son is now 2 1/2, and I hope he too will develop an interest in these things in the coming years.
Not quite the first, but this is how mine looked in '98: https://web.archive.org/web/19981205195643/http://www.justki...
I had no idea people were already doing smart home things 26 years ago!
For other parents here, if your kids are interested in learning HTML and CSS with the help of cute aliens, my son (who was 11 at the time) and I built HTML Planet for Kids [0]. The course uses a visual editor for manipulating HTML, so that there is less typing and frustrating syntax mistakes, while still exposing the code directly without any added abstractions.
#!/bin/bash
legs_out=(
" "
" .'''. "
" - - "
" | C ^ "
" \ 7 "
" | | "
" / \\ "
" | \\ \\ "
" | \\ \\ "
" / | \\ \\ "
" / | \\ \\ "
" / | \\ \\ "
" / | |\\ \\ "
" \\ \\ "
" \\ "
" / \\ "
" / \\ "
" / / \\ \\ "
" / / \\ \\ "
" / / \\ \\ "
" / \ \\ \\ "
" \\ \\ \\ \\... "
" ____] [ ]"
)
legs_cross=(
" .'''. "
" - - "
" | C ^ "
" \ 7 "
" | | "
" / \\ "
" | | | "
" | | | "
" | | | "
" | | | "
" | | | "
" ( | | | "
" | | ) "
" | | | "
" | | | "
" | | | "
" | | ) "
" | | | "
" | | | "
" | | | "
" / | "
" / | | "
" \\..] / / "
)
print_man() {
local spaces=$1
local man=("${!2}")
for line in "${man[@]}"; do
printf "%*s%s\n" $spaces "" "$line"
done
}
spaces=0
state=0
while true; do
clear
if (( state % 4 < 2 )); then
print_man $spaces legs_out[@]
else
print_man $spaces legs_cross[@]
fi
((spaces++))
((state++))
if (( spaces > $(tput cols) )); then
spaces=0
fi
sleep 0.1
doneWell put, Naya!
That's the spirit!
I'll show myself out...
We fucked up bad. Real bad. As software engineers, we have produced nothing but garbage in the last two decades.
It was dozens and dozens of pages of hand-coded HTML, updated nearly daily, with lots of easter eggs, etc. I had programmed a ton (I was a C/C++ developer at the time), but never in HTML. I learned everything by "viewing source" (at the time, most of the web was hand-written HTML).
We hosted it at The Well, which even then had a little bit of cachet in the community.
One of my great regrets was that we didn't keep a copy of the site -- and we "retired" and took down the site early enough that the Wayback Machine doesn't have a copy.
You don't need a DOCTYPE tag?
You don't need a head tag?
You don't need to declare the charset?
The body tag has a "background" attribute?
The HTML "center" tag still works?
True, there are many things you don't need for a page to be rendered in a typical browser, but that doesn't make them useless. For example, DOCTYPE has exactly one purpose: tell the browser not to treat your page like it was designed for ancient versions of Netscape Navigator or Internet Explorer, with all the "quirks" of their pre-standardization rendering engines.
Maybe we should be testing our interfaces and API's with 7 year olds from now on. If they can't or won't use it, its probably a good signal the design is wrong.
Don't other crafts and professions have a stronger focus on understanding fundamentals?
There's also much more useful information today than 20y ago though. Even though the signal to noise ratio seemingly gets smaller.
Many large companies have wasted lots of money on performance and UX while still being worse than this!
I love how this ends on an exclamation mark and not a question mark. Obvious in hindsight.
Naya gets it!
Perhaps a website could be fun too. But HTML 3.2 was much more friendly to beginners than everything that is out there now.
>Please don't complain about tangential annoyances—e.g. article or website formats, name collisions, or back-button breakage. They're too common to be interesting.
Amen!
Can you spot the mistake?
Neither can I. :-)
Well done.
Tell your daughter to keep making things that she likes to make!
Naya just perfectly summarized 80 % of the MacRumors forum in two sentences.
Did your daughter face this problem?
Thanks for sharing! This is exactly the sort of smile I needed today.
hehehehehe
Please tell your daughter that Ben really liked it and his favorite page was the dogs page. Question for her: Is that a picture of your dog? Does the dog have a name?
Incidentally, I was creating an image for a slide for a talk a few weeks ago, showing off HTML circa 1996 and decided to do it in Windows 95 (which is what I used to write my first web pages when I was 12) and it was a lot harder than I thought it would be (mostly because the intricacies of what HTML versions were supported in the included browser versions of the Electron emulator I was using), to recall what tags did and didn't work.
But I credit HTML with everything for me, as far as computer programming is concerned. Having a way to express markup in a text editor and see the results on a web page was life-changing.
Love to see first graders doing this now!
Figuring out HTML was not too hard for me as a kid. Things enclosing other things is not a hard to grasp concept. I didn't use CSS and back then you had <center> and stuff; nowadays it's frowned upon as mixing up semantics and presentation, but back then it made sense to me.
But doing any sort of programming (like at least writing batch files that had ifs and loops) was way harder and it took me several years to figure out.
Oh yes indeed.
By any chance was this made on a tablet? I see it mentions “tablet… make a website”. Perhaps if children grow up having accessing to tablets over computers, making websites on them won’t seem as foreign compared to a computer.
I host a youth computer club and help at holiday camps and see this a lot. Some elementary school kids (girls mostly) love to write.
All you need is to leave all the distracting tech aside (No tools! No frameworks! No cms/ssg! No autocomplete) and have a space without advertising or TOS where the results can be show to friends & family. Some also love to draw with https://twilightedge.com/mac/pikopixel/ on our raspis.
Great job, Naya.
I hope you tell Naya how much HN is loving it!
https://web.archive.org/web/20180330033122/http://moj24.trip...
Either way, nice job, especially for a 7-year old learning web development!
That’s how I started too. Back in the days of Internet Explorer, I used to click View -> Source and mess around with the HTML in Notepad. I’d change the content, blocks, colors...
About 25 years later, I’m still coding, but right now I’m deploying the data transformation pipeline (T in the ELT) on production server to calculate business KPIs.
I was significantly older when I built my first website (19, in 1996) but I'm so glad I had a space to pretty easily put up basic HTML (Geocities, though there were similar options). No WYSIWYG, no build steps, just the basic text-only HTML which created a foundation to build on. It's unfortunate there aren't really good options for that for today's younger creators. (is there?)
An adult should be able to become proficient at HTML within minutes, hours at most.
Keep it up, you're doing great! :)
Though uBlock Origin blocks the JS tracker already.
"Without it no websites, no Roblox studio, and no nothin."
It's nice that kids these days don't skip the basics.
Please, please, don't ever tell her about Javascript.
I am deeply impressed.
So true!
I‘m intrigued! We also have two dogs and the more I know them, the more I‘m fascinated by their ability to tell us exactly what they feel. I didn’t know they can learn to use buttons to do this.
Wish I was making stuff this cool when I was 7. I was just into Lego's and rollercoaster knex.
That's pretty much how I make websites up to this day.
Later, if it grows, I usually add a stylesheet file to separate content and layout.
Then I sometimes add some JavaScript.
Then I sometimes add some backend storage and processing.
Then I need a certificate for https.
Then if it gets a lot of traffic, I put a CDN in front of it.
And that's it.
Ah the good old days :')
I hope she enjoyed it, and continues to enjoy it.
I also hope to do similar with my children when they’re at at that age.
Back then, i remember my dad was having trouble using Dreamweaver. I went to try and help him, and found that using Dreamweaver was more fun to me than playing with my XBOX or PS1
It just needed a marquee, blink, visit counter, guestbook, under construction disclaimer, some pixelated 256 color palette animated gif, and you would become one of us.
Beats an expiring gmail address
Having fun is the most important thing, everything else follows that.
I love that such a simple page taught her how to make a completely functional website. Links, images, styling, and even an external script inclusion.
Way to go Naya.
Well done Naya!
My son would agree.
My very first website on Geocities looked pretty much like this.
Joy of creation.
Good job.
I've been trying to get mine to use an alias but so far is one per service and loses a bit of magic.
A: When the graduate from medical school!
—Dave Barry
> Cats are about 2 feet that means six times there height would be about 12 feet. That would be a very terrifying cat
> That means that there warm blooded
> there looking forward
Hope you told her how to differentiate between there and their though :-)
But it's OK, that will come.
If you don't mind sharing, how is this hosted?
That's probably not so hard that a 7 year old girl could do it.
- H1 content is too long, it should be less than 60 characters, use <p> for the rest of secondary content
- There should be only exactly 1 H1 per pageI thought about making a similar post, in the true spirit of a “Show HN”, but would have included the “/s”.
Come on, Apple. A seven year-old gets it, why can't you? Let iPads run MacOS.
<3 wonderful project. Brings back memories of excitedly writing HTML in my drawing notebook and daydreaming what the pages would look like
Love this OP, thank you for sharing.
OP, I think you’re doing your daughter a great service with building an attitude that computers are just machines that can be learned about and understood. I started with HTML at 10 years old, and it gave me a lasting passion about the internet and connecting the world, leading to peace among distant people. Nowadays as an adult I’m unfortunately disillusioned due to negative aspects of social media, dating apps, and fake news, but alas..
Maybe in the future you can show her light javascript, the WAMP stack to make a guestbook (beware of spam nowadays), a cat image gallery with upload function (and a password). The latter features requiring something like PHP or perhaps python nowadays, and some database (I used mysql 25 years ago, perhaps sqlite or postgres nowadays?)
Can we just put the author of these pages in charge of the whole Internet please?
keep at it
...
satisfied smile
Also, as a nondeveloper i think there is room for a centralized hub for decentralized geocities-esc websites. Especially with the degradation of google search over the years, and the potential for a race to a deeper bottom than before due to AI generated content
I don't miss the days of framesets and including the header, footer and menu over and over again
The only thing you can do is write paragraphs in templated portions of the page. And that's who a CMS is for: people who are doing a job, and have no curiosity about looking under the hood and messing around.
---
By necessity, kids these days don't even need to learn what a file is. Videos are "on youtube". Documents are stored "in ms word".
The median developer even seems to have a very shallow understanding of how a computer actually works. And why would they, if they can just glue some Lambdas together to earn a buck?
---
Praise those that look a bit deeper and really want to know how a thing works, how you can create something truly original with a tool, instead of simply using it along the happy path.
I still personally cling to files personally, but I have no real reason to believe that they are a fundamental abstraction that is more true than cloud lambdas.
Like kids thinking corn comes from the corn factory.
As another example: in the early web, behind every url was a file (with an actual file extension), but then we abstracted them into resources, and I feel that this coincided with an evolution of the field.
The concept of a file or blob will probably still be useful in some capacity for decades to come, but I wouldn't want it to hinder us from realizing better abstractions.
Files have a way to go yet.
Files are everywhere. They are every-thing. Except now, thanks to the disaster that is SharePoint, nobody has a fucking idea where they are any more. Because they've been abstracted away by some genius on the Teams team.
So nobody can find what they were just working on. Or they have no idea if the thing they find is the right version. It's a total shambles.
A hierarchical file system was boring, but it worked. And it still does.
Disclosure: I'm Johnny.Decimal and my business depends on files still being a thing.
This very site is being served from a file system.
And then the person leaves the company/org and this file will float in space (SharePoint) forever, never to be recalled again, never to be read again, alone, in a cold world (computer room).
Speaking about SNL sketch.. it reminded me James Cameron's reaction on the Papyrus sketch --> https://www.youtube.com/watch?v=wm1-k__LF40
It will likely eventually be used as training data for an LLM and get an afterlife. Resistance is futile.
Edit a video? Built in app, or your social media app is already loaded with that and you can save state instead of posting
Reverse a video? There’s an app for that which just goes back into your Photos app to let you tried that content
and so on
people dont need to have that mental model until something breaks
You want to produce a video of any quality at all? You're using files.
and you can edit in high quality on an iphone, higher than what’s necessary to view on an iphone
so, two premises that arent substantiated
They might exist. I don’t watch TT, I’m happy to be wrong.
But MKBHD, Justine, Mr. Beast, CGP Grey — you name ‘em, they use files to edit a production.
Someone that doesn’t watch tiktok thinks a millions views is a lot there
Stick with YouTube your worldview isn’t relevant this decade
People in the late 90s/early 2000s probably complained about people like me who learned about HTML but only had a shallow understanding of how laying out a GUI and text rendering works. Which why would we, when we could just glue some HTML together to make a Chrono Trigger fan site?
It just happens that people who know how the bits actually move underneath the abstractions tend to be better at solving problems related to those abstractions, than those who don't.
Coincidentally, I've been thinking about that recently. My conclusion was that this couldn't be true, as it didn't make any sense.
I mean, even when using a phone or a tablet, the pictures they take or the videos they make end up somewhere. And that somewhere must be found, to be able to upload their take to the app or the website of their choice, or to be edited in an app before uploading.
So by extension, as that medium is "somewhere" on their device, they must be able, intuitively, to deduce the concept of a file?
And the take on the median developer frightens me even more. Somehow it feels akin to giving a soldier a firearm and letting him off to go and fight. Surely that's going to end in disaster?
Praise those that look a bit deeper and really want to know how a thing works
Are people really that hermetic to understanding how the items and tool they use actually work?From what I've seen in some of our new recruits, yes. And those are technically educated people.
In general public, I've noticed that if stuff is working well, people don't tend to take a deep look into how it works.
I guess that's how different minds work right ? For example a curious mind wants to know how a thing behaves and how it works etc, whereas a visual mind would look for how it looks.
That's really the part I can't wrap my head around.. The first thing I tend to do when I encounter something new -a new phone, a new bike, new tools, etc- is to understand how it works, to see what I can do with it, what its limits are, and most importantly, if I can bend those limits to suit my needs..
Accepting something at face value is really not an option. Partly because, more often than not, that would also mean settling for mediocrity as "quality" seems to be a secondary target nowadays. Thing will not work how you want, things will break and will need to be repaired, some artificial constraints might be need to be circumvented. And on the other hand, there is always something interesting that can be learned by being curious.
We are not all wired the same. But if the "technically educated" people are no longer "technical" than at least I shouldn't fear about future employability.
The pictures taken on your phone are not "stored somewhere", they are stored "in Google" or "in iCloud" or "in the photos app". Documents are similarily "in Google" or "in Word". There's no intuitive relation between photos and documents being the same thing on the filesystem, nor is there a concept of the filesystem at all. Generally, things jusr "work" (until they don't) and nobody asks any questions.
Now, I would like to clarify that this isn't a "darn kids these days" tangent, in fact, it's the opposite: darn adults these days won't teach their kids how to use the computer!
I would expect/really hope that when my generation starts having kids, computer literacy will start going up again. But for now, it's totally in the drain.
With respect to developers... Most of them know a lot less than they should. This is also an education/incentives problem.
I would bet most of the greyhaired people on here as well as those who were born at the time of the personal computer revolution didn't have parents who were proficient in a technology that was literally just made available to consumers yet those kids learn to use a computer on their own at a time where there was no internet available to check.
Why do kids suddenly need to be taught personally when they are the first generation to have the greatest amount of resources to learn how to use a computer available for free, in multiple teaching styles, multiple formats, at different levels of detail?
I feel this is related to the helicopter parent mentality that replaced parenting styles from earlier periods
Lower is not lowest.
Looking around though I think it's going to depend on what industry parents are in. There's still a lot of cluelessness around even among people who have grown up in an era of computers.
https://pagespeed.web.dev/analysis/https-naya-lol/tkn3le4d53
<!-- Cloudflare Pages Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "cf82897298e84b9eb36d9490803c2538"}'></script>
Ah, kids these days! <img src="catcute.jpg" width="500px" height="400px" ></img>
Width and height must be specified without units (although looks like browsers accept it, probably by ignoring the unit). IMG tags are self-closing, so you can omit </img> <img src="wool.jpg" width="500px" height="400px" ></img>
The dog picture has wrong aspect ratio. The dog is squeezed! It should be 620 × 349 or, if 500 width or 400 height is needed, there's a good mathematical task to calculate the size of the other side. <br/>
No need for / in HTML. unicorn.html
unicorncopy.html
Page for cats is named unicorn.html! and for computers it's unicorncopy!!!PS I don't like that CloudFlare Pages strips .html. Too magical.
> What to Submit
> (…)
> Off-Topic: Most stories about politics, or crime, or sports, or celebrities, unless they're evidence of some interesting new phenomenon. Videos of pratfalls or disasters, or cute animal pictures. If they'd cover it on TV news, it's probably off-topic.
https://news.ycombinator.com/newsguidelines.html
It is because you’d hear about that anywhere and everywhere else that it doesn’t belong here. Would you complain that a forum about cooking or sharing wallpapers didn’t cover the news as well?
Though it was submitted and discussed anyway, which always happens. That can be confirmed with your own keywords.
https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
I’m not sure of the activity level of HN at the time it occurred.
https://hn.algolia.com/?dateRange=pastWeek&page=0&prefix=fal...
Ironically, I find the most HN comments of all to be the ones who complain about something being too HN.
Which is not to say your comment wasn’t humorous, but let’s not be too quick to cast stones.
The communicator does have responsibility on how their message comes across, thought not all of it. It’s on the receiver to also make an effort to understand what was meant and not take unnecessary offence. The comment reads pretty much neutral, apart from a post scriptum which is explicitly about the author’s preference. It’s up to you to inject the writer’s feelings as either “this code sucks, here’s how you do it” or “congratulations on making something cool, here are a few suggestions”.
My experience is that life is much better if you take the latter approach. Default to empathy.
Consider listening to “This is Water” from David From Wallace.
Connection before Correction - code review
Oh hey, I learnt a new thing today!
It always felt apt to offer a few words of praise for the things that are good, or to establish common ground in code review before offering constructive critique.
Wouldn’t call it a must, but makes putting one’s own ego aside when receiving critique that much easier and lets me focus on improvement, I try to do that for others as well now!
We talked about that, and she thought it looked better that way.
I personally prefer having the /> even though it's not necessary, so that I can tell at-a-glance whether a tag is self-closing or not. It doesn't hurt, does it?
(plus I'm just used to it because the book I learned HTML from was confident that XHTML was the future)
xhtml still works in modern browsers btw. It's still probably the easiest way to do page templates. XSLT shows its age without the ability to modify the page after load (unless you run it via javascript), but we could've just added that and it'd be almost perfect.
① The trailing slash doesn’t make a tag self-closing. All it does is get ignored, emitting a parse error (which in common compiler terms is just a warning) if you use it on a non-void tag.
You can’t use <div/>. You can’t use <custom-tag/>. The only tags you’re allowed to use the trailing slash on are the defined void tags like <img> and <br>.
It’s not “not necessary”, it’s “completely useless, by definition”.
I’ve seen people presume they can close tags this way. JSX probably helps cause this, because you can there. But because self-closing tags aren’t a thing in HTML syntax, I think it’s harmful to use the spelling at all in HTML syntax.
② I wouldn’t mind so much if people used it consistently, and I wouldn’t mind at all if it was being used to support both HTML and XML syntax, but if you see sites that use trailing slashes on void tags in their head, practically every time there will be at least one tag that isn’t using it:
<link … />
<meta … />
<link …>
<link … />
③ I also dislike it because it’s fairly common for syntax highlighters or other casual parsers to get it wrong. Most commonly, I’ve seen tools misinterpret an unquoted last attribute, treating <a href=/example/> as <a href="/example" /> rather than <a href="/example/"> before. (Same with the likes of <img src=/example/>, but anchor hrefs are more commonly going to look like that.)I have never heard of anything even vaguely matching your description, and it would be wildly wrong. HTML parsing is exhaustively defined, and the only way of correctly parsing HTML is to use the defined HTML parser.
the dog is squeezed!
Her page, her squeezed dog !While most of th 7 year olds contemporaries are busy consuming content instead of creating it like this?
Just type in some word like "cat" and click on the links. They are kinda all like that.
This tends towards cleaner sites and really it's the only stable fix for SEO spam
[0] https://developers.cloudflare.com/analytics/web-analytics/ge...
Jokes aside, impressive for a 7 years old!
Hopefully she has a heavy piggybank for my incoming GDPR lawsuit /s
I've no memory for last 10+ years other than computer and programming. All I've pretty beautiful memory from childhood.
Tags can provide clear starts and ends for beginners, as well as concepts of nesting.
Folks who learned to code HTML using a wysiwyg html editor may be able to describe how it helped them learn.
Programming isn't big deal any old age man can do programming. Anyone can learn programming at any age. But kids life never come back.
At least teaching standard mathamatics like bits and bytes with abacus can be acceptable. It might be helpful to improve the math skill along with their school syllabus. Math is universally standard. Math actually improves our lifestyle.
But programming is just text format that a engineer designed. A well designed IDE with voice assist can replace all kind of programming.
Programming as a kid or teenager wasn’t work. It’s fun. It’s a challenge. It’s a sense of accomplishment if you do something that you didn’t know how to do.
7 can seem young to me too but I also know kids these days seem different and if they are naturally into something… can’t say much.
Even kids with little to no screen time are sponges and there’s so much more to stimulate them.
Your feelings are not universal.
Kids are universal even in all species. I can do those tinkering work in my old age which one you did in your golden age. Apart from the shake of argument, I'm really sorry for your loss :(
And no, children are definitely NOT universal in the sense you say. They have very different personalities and interests from a very very young age.
If you are saying this in a negative light, you should really work on changing that. Try finding things local to you that you can participate in.