2024-09-01 01:10:00 xentrac: That "stable timing" is one of the things that got lost along the way. Back in the day you could do that with more or less any micro if you were careful with your pgoramming, because the instruction timing was precisely defined and you could look it up in a book. 2024-09-01 01:10:21 So anything you did could have crystal-controlled timing accuracy if you paid enough attention. 2024-09-01 01:10:34 all the things we do to make things faster also make them less consistent 2024-09-01 01:10:40 You mostly just needed to be able to count and add. 2024-09-01 01:10:48 Yes. 2024-09-01 01:11:00 And more people cared about faster than about consistent. 2024-09-01 01:11:01 in most cases it's fine, because the cpu in your computer or phone doesn't need to produce pulses with microsecond accuracy 2024-09-01 01:11:28 Right. Just specialized a pplications, and for those now you need some separate thing made to do it. 2024-09-01 01:11:37 any a keyboard doesn't need a 32 bit multi-ghz cpu to scan the matrix 2024-09-01 01:11:46 Nope. 2024-09-01 01:11:54 it needs some dumb as bricks microcontroller that can do pin io very fast 2024-09-01 01:11:57 such as an avr 2024-09-01 01:12:07 Or pic. 2024-09-01 01:12:24 pic is slightly more hench than avr afaik 2024-09-01 01:12:52 Yeah, I'd probably choose avr over pic. Pic just had a pretty big market footprint for a while. 2024-09-01 01:12:55 i mainly namedropped avr because i know it 2024-09-01 01:13:06 not too hot on the whole computation thing 2024-09-01 01:13:11 but good lord can it do io 2024-09-01 01:15:36 I got kind of annoyed a couple days ago. We had a six or eight hour internet outage here, and I had to use my cell hot spot. I turned it on and sat there and waited between three and four minutes for it to get itself booted and connected to the Verizon network. Most of that was waiting for it to boot. 2024-09-01 01:15:44 In this day and age NOTHING should take that long to start up. 2024-09-01 01:15:59 yeah my phone took like 5 minutes to boot the other day 2024-09-01 01:16:05 I don't understand why turn-on for such devices isn't just a couple of seconds. 2024-09-01 01:16:12 bear in mind my laptop takes <30 seconds 2024-09-01 01:16:18 Right. 2024-09-01 01:16:24 Similar here. 2024-09-01 01:16:35 it might be that the storage is just really slow 2024-09-01 01:16:55 I guess. But... bad choice. :-( 2024-09-01 01:17:04 and so loading all of linux and the userspace all in one go takes a while 2024-09-01 01:17:17 But you're right - maybe it just has some giant serial flash chip and reads the whole RAM image in one bit at a time. 2024-09-01 01:17:28 well it does 2024-09-01 01:17:49 a modern smartphone is basically just a linux system 2024-09-01 01:17:59 it has an internal emmc that it boots from 2024-09-01 01:18:16 so it has to load the kernel and the userspace before you can use it 2024-09-01 01:18:17 I liked the good old days when your code was in ROM and could just be run from there immediately. 2024-09-01 01:18:41 I'm fine with flash rather than ROM, but I'd still like it to be byte/word addressable so you could execute it. 2024-09-01 01:18:42 KipIngram: yeah, stable timing got traded off for higher throughput and kind of more convenient programming models. cheap copy-on-write memory and overcommit are terribly convenient, for example 2024-09-01 01:19:24 an AVR is still something like 100 times faster than the 8048 used in the original IBM PC keyboard 2024-09-01 01:19:41 turn-on for such devices is probably mostly Linux 2024-09-01 01:19:45 most avrs are specced and tested to 16mhz 2024-09-01 01:20:08 but people have pushed them to 20mhz (and probably above) 2024-09-01 01:22:13 "The microcontroller's oscillator block divides the clock input frequency by three and then further divides the result into five machine states. Using the 11 MHz maximum crystal frequency will produce 0.73 MIPS of single-cycle instructions." 2024-09-01 01:22:55 so like 16x rather than 100x 2024-09-01 01:23:00 that's the 8048, not the AVR 2024-09-01 01:23:05 yes 2024-09-01 01:23:08 the AVR is mostly one instruction per clock 2024-09-01 01:23:20 but the original 8048 couldn't hit 11 megahertz 2024-09-01 01:23:31 ram acceses are two 2024-09-01 01:23:47 yes, also true on the 8048 2024-09-01 01:23:53 lemme grab the datasheet 2024-09-01 01:24:29 yeah pretty much all the register-register operations are one cycle 2024-09-01 01:24:35 (also Microchip has brought out 24MHz-specced AVRs but that's beside the point) 2024-09-01 01:24:54 conditional branches are one or two if taken 2024-09-01 01:25:11 I forget if the 8048 has a similar branch penalty 2024-09-01 01:25:27 call is 4, rcall is 3, etc etc 2024-09-01 01:25:31 probably does 2024-09-01 01:25:38 most things do, especially of that era 2024-09-01 01:25:48 yeah 2024-09-01 17:16:31 one thing to remember about 8048/8051 timings is that they're given in machine cycles not clock cycles where a machine cycle is 12 clock cycles 2024-09-01 17:16:44 so 12, 24, or 48 cycles 2024-09-01 17:17:01 is what you'll get on the chips you're salvaging for junk 2024-09-01 17:17:45 more modern ones are single cycle where they take one clock cycle per machine cycle and sometimes slightly more so 10-12x faster than the original 2024-09-01 17:19:16 the main selling point for playing with 8051s is external memory which is not easy to get in most microcontrollers. atmel makes or made an AVR in throughhole with an address bus too 2024-09-01 17:21:09 yeah there's not really much between everything on one chip like you get on avr 2024-09-01 17:21:19 and everything on different chips like a 6502 machine 2024-09-01 17:22:39 there's everything on one chip like an avr in 6502 microcontroller :P 2024-09-01 17:22:51 ya that's true 2024-09-01 17:23:48 I got interested in microcontrollers to build calculators and in the late 90s they already had 512k ram and 2mb flash so the open address bus is very appealing 2024-09-01 17:33:31 i guess it's partly that as your cpu gets faster, the buses have to be better 2024-09-01 17:34:00 you can't just throw any old junk on a 125mhz arm like you can on a 1mhz 6502 2024-09-01 17:35:17 xentrac: if you're interested in more weird stuff, check out the 80251 2024-09-01 17:35:56 a company called STC which is making new 8051s also makes a "32 bit 8051" that appears to be a 80251 from the chinese datasheet 2024-09-01 17:36:07 and it comes in throughhole 2024-09-01 17:53:20 why 2024-09-01 17:54:17 there are such better architectures, why keep 8051 alive? 2024-09-01 17:57:57 it's simple and people know it. way less rigmarole getting clocks set up and controlling peripherals than a lot of other chips 2024-09-01 17:58:45 ive never used 8051 but i'd bet avr knocks it out of the park 2024-09-01 18:15:31 MrMobius: hey, thanks! 2024-09-01 18:15:55 MrMobius: 15 clock cycles on the 8048 2024-09-01 18:17:09 it's also worth pointing out that the 8048 needs, for example, three (one-machine-cycle) instructions to do a subtraction. so its instructions are kind of weaker than AVR instructions 2024-09-01 18:20:03 zelgomer: my interest in the 8051 is specifically that it has an "external access" pin, /EA, pin 31 on the 40-pin DIP, which, if you ground it, makes it run code from external memory instead of its internal memory 2024-09-01 18:21:27 which means that if you can pry or desolder an 8051 out of some old circuit and wire it up to an external parallel EPROM or EEPROM, you have a perfectly functional microcontroller that does what you want 2024-09-01 18:22:28 instead of running the firmware to be an engine control unit or keyboard encoder or whatever it has in its ROM (which, specifically on the 8051, is mask ROM, so there's no hope of reprogramming it even a little bit) 2024-09-01 18:23:29 you can also reprogram AVRs if you can pry or desolder them from existing circuits, because they're all Flash! but I've never encountered an AVR in e-waste, not even once 2024-09-01 18:24:50 this EA thing also exists in the 8048/8748/8049 but not the 8021, and also in the 8096/80196/80C196/8xC196 2024-09-01 18:27:15 MrMobius: so what's the 80251 pinout like? Does it have EA? 2024-09-01 18:30:56 Pool controller is coming along nicely. I'm almost done with the hardware - just a couple of transient voltage suppressors to add to a pair of relay outputs. And maybe a safety interlock that will keep the heater from running if the main water pump isn't; I'm not sure about that yet because the heater may already have such an interlock built in. Need to do some research. 2024-09-01 18:31:24 I won't let the software turn on the heater unless the pump is on, but I'd feel safer with a hardware layer of protection. 2024-09-01 18:31:40 KipIngram: nice! 2024-09-01 18:31:55 typically microwaves, electric kettles, etc., include a thermal cutout 2024-09-01 18:32:12 it's basically a bimetallic thermostat toggle switch sealed in a can and preset for a given temperature 2024-09-01 18:32:17 Yes, this heater supposedly won't run over 104 F. 2024-09-01 18:33:22 In remote bypass mode, where you turn it on and off from the outside, it doesn't know whether you have everything in pool or spa mode, so it's up to your software to make sure you don't heat your whole damn pool to spa temperatures. 2024-09-01 18:34:24 When it's not in external mode it has a mode switch, so you tell it which mode you're in. But in external mode that's bypassed. 2024-09-01 18:34:50 And even in that internal mode it has no idea where the water is going - just trusts you to have pushed the right button. 2024-09-01 18:35:09 those thermal cutouts aren't nearly that precise 2024-09-01 18:35:45 Yeah, I figured they wouldn't be. 104 is just what it uses as a setpoint; certainly could be off a little. 2024-09-01 18:35:48 one that's rated for 40° (let's use legitimate degrees here?) might cut out at 45° or something. it's annoying 2024-09-01 18:36:22 And I don't know yet how accurate my temperature sensors will be (and I have to calibrate them anyway - they're just voltage dividers with a thermistor). 2024-09-01 18:36:32 it heats up to 85° and turns off, and then doesn't turn back on until it gets down to 65° 2024-09-01 18:36:39 So I'll have to figure out how close to freezing I can let it get before engaging freeze protection. 2024-09-01 18:37:04 Well, historically our spa has behaved better than that. 2024-09-01 18:37:11 yeah, so what I'm saying is 2024-09-01 18:37:16 you might want to get one of these 2024-09-01 18:37:21 It seems to stay within 2-3 degrees of what you've asked for, at least based on feel. 2024-09-01 18:37:21 and put it in your heater 2024-09-01 18:37:27 Certainly doesn't swing 20 degrees. 2024-09-01 18:38:01 so that if your water pump for some reason doesn't turn on, you aren't relying on the nice precise thermostat to keep it from catching on fire 2024-09-01 18:38:10 That thermal protection thing, though, is just that - once I have this running it will be the temperature sensors that decide whether I turn the heater on or off or not. 2024-09-01 18:38:24 The protection interlock isn't used for actual "comfort control." 2024-09-01 18:38:40 yeah. I think it's good to separate those functions 2024-09-01 18:38:50 I don't like the spa that hot anyway - I prefer something between 95 and 100. 2024-09-01 18:39:00 My wife, though... she likes it scalding. 2024-09-01 18:39:19 because those little thermal cutouts are extremely reliable 2024-09-01 18:39:29 though microwaves and coffeemakers and things like that usually have *two* of them. just in case! 2024-09-01 18:39:58 The guys who originally installed this left the air temperature thermistor haning where the sun could shine on it. 2024-09-01 18:40:17 In the morning. There were times I'd look at the old controller and it would announce that the air temp was 102, when it was nowhere near that. 2024-09-01 18:40:30 I put a little shade on the side of the box so that that sensor will never be in direct sunlight. 2024-09-01 18:40:54 It jus thangs down below the electronics cabinet. 2024-09-01 18:41:09 The water temp sensor, of course, sticks in the side of one of the pipes. 2024-09-01 18:41:13 heh 2024-09-01 18:41:17 Just as the water is coming back from the pool. 2024-09-01 18:42:16 I just wish I could build this stuff as nicely as I can envision it. This is all dead nuts simple stuff, from an embedded perspective. But I'm awfully fumble-fingered with a soldering iron. 2024-09-01 18:42:26 Makes the work tiring, even though it's not "complex." 2024-09-01 18:42:35 So I'm just taking it in little bursts. 2024-09-01 18:43:08 First thing I did was hot-wire the main pump so that we can circulate water and chemicals and stuff - I can turn that on and off with a 240V breaker in that cabinet. 2024-09-01 18:43:19 Putting that back on its proper relay will be one of the last things I do. 2024-09-01 18:43:42 That really took the time pressure off, though - made it so we could keep the pool clean. 2024-09-01 18:43:45 And if you're soldering wires that carry water-heater amounts of current, that's not going to be easy 2024-09-01 18:44:04 normally people use screw terminals or something for that 2024-09-01 18:44:04 Oh, no - I'm only dealing with the control. There was no damage to the components that handle the power. 2024-09-01 18:44:07 rather than soldering 2024-09-01 18:44:12 aha, good! 2024-09-01 18:44:16 But yeah - you're definitely right about that. Fortunately I don't have that to do. 2024-09-01 18:44:47 I have screw terminals for external connections. The soldering is just for stuff that maounts in the holes of the proto board. 2024-09-01 18:45:13 The particular board I chose has little rows of five holes that are shorted together, so you can use that set of holes to interconnect things. 2024-09-01 18:45:38 They're only plated on one side, and I wish they were plated on the other. 2024-09-01 18:45:48 But it's sufficing. 2024-09-01 18:48:13 0 0 DO ... LOOP is executed at least once? 2024-09-01 18:57:16 I think so, yes. I think the conditional jump is associated by LOOP. 2024-09-01 18:57:39 So it might be executed MAXINT times; I guess it depends on what kind of comparison LOOP does. 2024-09-01 18:58:01 If it's an equality comparison that would run for quite a while, I'd guess. 2024-09-01 18:58:14 what about the classic for loop that if it founds 0 to the top of the stack jumps the entire block? 2024-09-01 19:02:09 Isn't is a less than check? 2024-09-01 19:02:37 ? 2024-09-01 19:09:53 while i < top repeat 2024-09-01 19:10:40 i mean something like: 0 0 for i loop <- here 'i' is never executed 2024-09-01 19:18:30 : test 0 0 do i . loop ; prints out all the numbers for me 2024-09-01 19:18:49 And without the . I get a stack overflow 2024-09-01 19:21:06 Surprisingly, there's a Jupiter Ace emulator for the iPad, comes with a forth manual too. 2024-09-01 19:25:29 There's retro too, but I don't have any experience with it. 2024-09-01 19:27:55 Sure, you could code up DO to make that check, I guess. It's just an extra conditional, though. 2024-09-01 19:28:08 Maybe it's standard to do that - you know me and the standard. :-( 2024-09-01 19:28:51 I guess you could put a conditional jump with DO and an unconditional one at LOOP. 2024-09-01 19:29:03 "Add one to the loop index. If the loop index is then equal to the loop limit, discard the loop parameters and continue execution immediately following the loop. Otherwise continue execution at the beginning of the loop." https://forth-standard.org/standard/core/LOOP 2024-09-01 19:29:20 The standard is roll your own, right? :) 2024-09-01 19:29:24 Right - that's LOOP. 2024-09-01 19:29:25 rendar: worse, as KipIngram says, 0 0 do ... loop is executed maxint times. you want ?do. do was a istake 2024-09-01 19:29:37 user51_: That's how I carry along, yes. :-) 2024-09-01 19:29:54 Ah, I like that. 2024-09-01 19:29:58 DO and ?DO. 2024-09-01 19:30:05 Have it how you like. 2024-09-01 19:30:22 KipIngram: After attempting to write a forth, I can certainly understand why. 2024-09-01 19:30:23 yes, but really it should have been do-a-definitely-nonzero-number-of-times and do 2024-09-01 19:30:38 lmao... 2024-09-01 19:30:40 "The code is more like guidelines" :P https://www.youtube.com/watch?v=k9ojK9Q_ARE 2024-09-01 19:31:08 user51_: Yeah, I do better than I used to in years past, but it's still probably more accurate to call me a Forth writer rather an Forth coder. 2024-09-01 19:31:37 For a lot of years writing them was the only thing I did. Write it and then use it enough to make sure it worked, and by then I was usually wanting to write another one. 2024-09-01 19:31:51 haha 2024-09-01 19:31:52 Probably five years ago or so I started writing a good volume of code. 2024-09-01 19:32:02 it changes your perspective, no? 2024-09-01 19:32:04 And I HOPE that my next one will be my last one, but we will see. 2024-09-01 19:32:11 Surely I've iterated almost enough... 2024-09-01 19:32:26 oh, I was going to mention about swimming pool power wiring 2024-09-01 19:32:28 I mean, there's always some REASON I want to write a new one - it's not just to be writing it. 2024-09-01 19:32:37 Speaking of implementations, I messed around a bit with trying to make my C code tidy, probably more than I should have. I finally found a use for single-element arrays in C: you can write things like mov(to, from) :) 2024-09-01 19:32:44 a thing people often do is put the swimming pool circuit on an isolation transformer 2024-09-01 19:32:48 Maybe PM that to me; otherwise some of the new guys will complain. 2024-09-01 19:32:50 so that there's no path to ground 2024-09-01 19:33:06 The 120V stuff is on an isolation transformer. 2024-09-01 19:33:12 I'll PM you. 2024-09-01 19:33:18 ha, way ahead of me there :) 2024-09-01 19:33:32 user51_: yes! I think that's commonly used for setjmp 2024-09-01 19:34:53 I don't know anything about electricity, so "120V" and "swimming pool" in the same sentence makes me think of swimming with toasters, because sharks ain't cutting it no longer.. 2024-09-01 19:36:22 xentrac: If I continued writing I probably would've had to use setjmp/longjmp, because my inner interpreter was a function called by the outer interpreter, itself a function. That would make things like QUIT not very clean. 2024-09-01 19:39:02 xentrac, oh 2024-09-01 19:39:03 haha 2024-09-01 19:39:32 so 0 0 ?do i loop `i` is never executed 2024-09-01 19:39:36 right 2024-09-01 19:39:40 I apologize to you on behalf of the Forth community for the existence of do 2024-09-01 19:40:12 xentrac: Maybe next time I'll write it using computed goto, that seems a bit cleaner in retrospect. I also messed up my execution, so things like LITERAL had to pop the return stack and.. yeah, that was bad. 2024-09-01 19:40:33 strange, with `: hello 0 0 ?do i loop ;` after executing hello i have 0 on the top of stack 2024-09-01 19:40:38 so it is executed at least once! 2024-09-01 19:41:30 The test is done at the end 2024-09-01 19:41:48 indeed, so `do ... loop` can't resemble a for loop 2024-09-01 19:41:58 or `?do ... loop` 2024-09-01 19:42:06 yes, it can. maybe you had a 0 on the stack before 2024-09-01 19:42:23 xentrac, i haven't... i have tested it many times 2024-09-01 19:42:33 : hello 0 0 ?do ." hi" loop ; hello prints nothing 2024-09-01 19:42:43 Actually with ?do I don't get any value left on the stack 2024-09-01 19:42:46 wait 2024-09-01 19:42:50 I'm testing in gforth 2024-09-01 19:42:54 me too 2024-09-01 19:42:56 me too 2024-09-01 19:43:06 but ?do is pretty portable 2024-09-01 19:43:14 but still i have that 0 on stack 2024-09-01 19:43:26 pop it off and run it again 2024-09-01 19:43:26 maybe ?do doesn't eat the 2 zeros but only one? 2024-09-01 19:43:31 it eats both zeros 2024-09-01 19:43:36 strange 2024-09-01 19:43:44 Looks like ?do doesn't start the loop if the values are the same 2024-09-01 19:43:51 maybe a better test would be : hellos 0 ?do ." hi" loop ; 2 hellos 2024-09-01 19:44:06 and then 0 hellos 2024-09-01 19:44:08 sorry, my mistake 2024-09-01 19:44:18 ?do works nicely also here, i had a typo 2024-09-01 19:44:43 no worries 2024-09-01 19:45:12 nice thing about programming is how much appreciation it gives us all for our own fallibility ;-) 2024-09-01 19:45:40 except Jeff Dean of course 2024-09-01 19:46:26 ahaha 2024-09-01 19:47:09 Seems like those LOOPs aren't DOing it.. we definitely need some RECURSE :) 2024-09-01 19:47:12 I was disappointed that this post of mine on the orange website didn't attract any replies: https://news.ycombinator.com/item?id=41412307 2024-09-01 19:47:42 xentrac: You're kragen? 2024-09-01 19:50:22 xentrac: Silly me, should've checked the whois. I enjoyed reading a lot of your comments on HN, I sometimes search for topics on HN because every once in a while I'll find a great comment. 2024-09-01 19:53:38 aw, thanks! :-) 2024-09-01 19:54:11 make sure to turn on showdead, a lot of my comments get flagged to death 2024-09-01 19:54:46 I don't have an account, just lurking around. 2024-09-01 19:55:27 oh, you can create an account without posting in order to turn on showdead. on most sites I wouldn't recommend that because of privacy invasion 2024-09-01 19:55:47 but I'm not too worried about dang using my reading habits against me 2024-09-01 20:09:06 user51_: oh also if you want to read my comments specifically instead of other good comments you can check out https://news.ycombinator.com/threads?id=kragen 2024-09-01 20:11:11 xentrac: I had some of them bookmarked, but broke my linux install and firefox decided to wage war against firefox so I lost all I had. 2024-09-01 20:13:16 xentrac: https://news.ycombinator.com/item?id=33786403 this one would be my favorite, because at the time I was stuck doing stack shuffling, and it eventually felt like I was writing things I'm ashamed of rather than not proud of. 2024-09-01 20:18:09 sorry to hear it :( 2024-09-01 20:19:54 Part of life, that's why I search around the net. Worst case, I'm not the only one who thinks "THIS THING SUCKS!" (in general, not specifically about forth) 2024-09-01 20:20:32 I keep my bookmarks in a text file 2024-09-01 20:20:47 for example: 2024-09-01 20:20:52 links from 02024-08-31: 2024-09-01 20:20:59 https://www.forth.org/OffeteStore/4001-footstepsFinal.pdf #PDF #ebook from 01988 by C.H. Ting, about the #Forth Novix #NC4000 #hardware design by Chuck Moore, a gate-array design from the 80s. 2024-09-01 20:21:00 I still have the old profile, so it's all safe. 2024-09-01 20:21:12 https://www.youtube.com/watch?v=VUdNrXhm0ik #video #toread on tiny Soviet pentode #electronics #hardware 2024-09-01 20:21:15 https://github.com/jhswartz/mle-amd64/blob/master/amd64 a macro assembler written in #sh. #small-is-beautiful #asm 2024-09-01 20:21:43 (there are a lot more than that, but that gives you the flavor of it) 2024-09-01 20:22:25 All of them in a single file? I was thinking of organizing things today, and thought a dictionary hierarchy would work fine. echo, cat, and git in case something silly happens. 2024-09-01 20:22:45 yes, it's 2.5 megabytes 2024-09-01 20:22:58 I should probably point out with respect to that comment that things like Gforth and F83 use many, many fewer variables than I was suggesting there 2024-09-01 20:24:03 it takes about 10 milliseconds for grep to search the whole file 2024-09-01 20:24:08 thanks for punting my (not so) hard work xentrac! 2024-09-01 20:24:18 punting? 2024-09-01 20:24:53 advertising in this case 2024-09-01 20:24:57 What I got from it is to think about the "meta" level. Specifically, idea of the same procedure being executed in a different language. Maybe an abstract syntax tree? 2024-09-01 20:24:58 aha, interesting 2024-09-01 20:25:29 user51_: yeah! back in the 60s they recommended programmers draw a flowchart before they started writing assembly 2024-09-01 20:25:56 pseudocode is a better technique 2024-09-01 20:27:14 the problem with hierarchical bookmarks is that (a) you have this very unappealing tradeoff with respect to specificity and (b) you want to categorize things on multiple facets 2024-09-01 20:27:15 if anyone is interested in that: https://github.com/jhswartz/mle is the script that makes it work, but mle-amd64 is effectively an isa plugin - and mli is a binfmt_misc interpreter written using mle 2024-09-01 20:27:35 speaking of flowcharts, have you encountered DRAKON? 2024-09-01 20:28:39 Only on wikipedia. Flowcharts could use indention too! 2024-09-01 20:29:06 https://en.wikipedia.org/wiki/DRAKON and you can play with it @ https://drakonhub.com/ 2024-09-01 20:29:38 my three example bookmarks above are tagged with #NC4000, which could conceivably be nested under either #hardware (:> #electronics) or #Forth; #ebook, which is about the nature of the content (long-form text) rather than its topic; #PDF and #video, which are about the file format; #sh and #asm, which are two other programming languages beside #Forth; #small-is-beautiful, which is orthogonal to 2024-09-01 20:29:44 classification by language; and #toread, which used to be the most popular tag on del.icio.us 2024-09-01 20:29:49 (which will unfortunately close down later this year, i never used it as a programming language, but i've used it a lot for diagraming) 2024-09-01 20:30:40 I've seen DRAKON but never tried to use it 2024-09-01 20:31:45 the specificity tradeoff is that if you make very specific categories, you have a lot of them, and so it becomes hard to find the right category for a bookmark, whereas, if you have not-very-specific categories, there are a lot of bookmarks in each one, which makes it hard to find the desired bookmark even when you've found the right category 2024-09-01 20:32:43 so I think free-text tags are a better way to organize things. I have some tagquery programs but even just free-text search is pretty useful 2024-09-01 20:37:05 I'm reminded of https://strlen.com/treesheets/ 2024-09-01 20:38:52 cool GeDaMo, that's something i would use 2024-09-01 20:39:25 I like the idea but I couldn't get comfortable with the UI 2024-09-01 20:39:39 what was challenging about it? 2024-09-01 20:39:55 I don't remember, it was a while ago 2024-09-01 20:40:15 yeah, treesheets is awesome 2024-09-01 20:43:48 I also really liked his dissertation: https://strlen.com/aardappel-language/ 2024-09-01 20:44:08 heh potatolang 2024-09-01 20:46:48 yes :-) 2024-09-01 22:18:47 re: drakon, i saw "russian" and "visual" and went "oh is that what they used on buran" before i even got to the second half of the sentence