]]
+ hcss([[ pre { margin-left: 20px; font-weight: bold; } ]])
// POSTS
+ imagePost("2018/07/20", "A few more steps",
#1101357, "45%",
p([[...and you'll have the dialog engine you're all waiting for.]]))
+ textPost("2018/07/22", "The StackOverflow War",
p("StackOverflow is completely intolerable if you try to actually work on it. The trolls are in charge there.")
+ p("There is a " + targetBlank("https://meta.stackexchange.com/questions/187661/mirrors-of-stack-overflow", "legal way") + " to mirror the site, so: Let's do it! I'm downloading the first archive as we speak. Huge stuff though, gigabytes over gigabytes..."))
+ textPost("2018/07/18", "English+German Parsers Work",
p("Input:")
+ pre("\"Confessions of a Burglar Video\"")
+ p("(It's the name of a video on YouTube.) So... is the video confessing—or the burglar? Let's ask the parser.")
+ pre(rtrim([[
1. Confessions {of {a {Burglar Video}}}
2. {Confessions {of {a Burglar}}} Video
]]))
+ p("Yup, it has found the 2 grammatical possibilities. Next up: Semantic analysis to rate these against each other."))
+ textPost("2018/07/18", "500 installations coming up",
p([[We're reaching a nice number of JavaX-enabled computers. And no, they're not all mine.]]))
+ imagePost("2018/07/12", "Perfect Parser Coming Up",
#1101356, "45%",
p([[English—no problem.]]))
+ imagePost("2018/07/12", "The Magic OS",
#1101353, "45%",
p([[In my OS, every computer can control any other one—if the "victim" deliberately chooses this (it's a separate module you have to load explicitly, so don't worry).]])
+ p("The communication process behind this is protected using automatic cryptographic signatures."))
+ imagePost("2018/07/10", "Teaching Puns To The AI...",
#1101352, "45%",
p("52 days to world domination."))
+ textPost("2018/07/10", "News from Zuckerberg",
p(youtubeEmbed_newer("_zCDvOsdL9Q", 400)))
+ textPost("2018/07/07", "56 days",
p("until Stefan's OS takes the world."))
/*+ imagePost("2018/07/05", "News From Israel",
#1101349, "30%",
p(targetBlank("https://www.aljazeera.com/indepth/inpictures/israeli-forces-assault-palestinians-prepare-demolish-village-180704141245982.html", "Great country.")),
picLink := "https://www.aljazeera.com/indepth/inpictures/israeli-forces-assault-palestinians-prepare-demolish-village-180704141245982.html")*/
+ imagePost("2018/07/02", "Dead Lock-Immune Operating System",
#1101348, "30%", p(targetBlank("http://tinybrain.de/1016805", "Code.")), left := true)
/*+ textPost("2018/07/02", "Dear Kirill from the Android team,",
hParagraphsFromEmptyLines([[I have to get these things off my chest.
1. I used to work at Google. I quit in 2009 because they wanted to waste me.
2. I make an operating system in Java that is ALL THAT ANDROID SHOULD HAVE BEEN.
3. I tried to install WhatsApp on a friend's Android phone yesterday and IT SIMPLY DID NOT WORK.
3b. I got kicked off the Play Store because I dynamically load code from un-servers (non-Google-servers). So it's a fight? Guess who'll win.
4. In my Java OS, ALL MODULES RUN IN ONE VM AND IT'S NOT A PROBLEM.
4b. No, the Java process does not get "wonky" over time as misinformed programmers baselessly claim. They just have more deadlocks than I do (my deadlocks are
fixed by the OS).
5. I have an idea for a better Swing PLAF interface. Just two components: a painter and a "clicker" (event handler). Easy & really transparent.
6. My OS has
orthogonal persistence which is... slightly easier than your persistence approach.
Cheers.
Stefan]]))*/
/*+ textPost("2018/06/30", "Something must be wrong with reality",
p("The movies we watch have a better plot than the life we actually live. How is that possible?"))*/
+ textPost("2018/06/30", "We're doing it again",
invtag('div, style := "float: right; margin-left: 20px; margin-bottom: 20px",
embedYoutube_newer("lAkuJXGldrM", 300))
+ p("Stefan's OS has a greater impact than Windows 95. You just wait and see!"))
+ textPost("2018/06/27", "Computer checks its own voice",
p(embedYoutube_newer("ZRkGdIvW5lM", 600)))
+ imagePost("2018/06/23", "Stefan's OS v5",
#1101335, "30%",
p("See who else is online, world wide (if you load the module).")
+ p([[Also notice the "AI bar" at the top which is a novel invention.]]))
+ textPost("2018/06/23", "We are solving the software security crisis",
p("The solution is "+ b("source code inspection") + ", and " + ahref("http://javax.tinybrain.de", b("JavaX")) + " makes it practical."))
+ textPost("2018/06/23", "We will now do the Super-Automation",
p("The operating system is the optimal place to automate everything—it sees everything and it can act upon information. Also loading and even making dynamic code on the fly is trivial in my OS."))
+ textPost("2018/06/25", "If your language isn't perfect—how about changing it?",
p("Let's say " + b("vanilla Java is too verbose") + ". (Everybody knows this.) Instead of this:")
+ pre("class ShowBackgroundImage extends DynModule {")
+ p("I want to type (and see) only this:")
+ pre("class ShowBackgroundImage > DynModule {")
+ p(b("In JavaX") + ", that takes " + b("exactly one line") + " in the " + targetBlank("http://tinybrain.de/759", b("translator")) + ":")
+ pre(htmlencode([[jreplace(tok, "class
> {", "class $2 extends $4 {");]]))
+ p("And this easily, my language has been extended.")
+ p(b(targetBlank("http://tinybrain.de/1016607", "Proof that this works."))))
+ textPost("2018/06/20", "Collaboration!",
p(targetBlank("http://www.ort-des-talents.de/", "BrainCircle.")))
+ textPost("2018/06/20", "Stefan's OS v4",
p(ahref("https://www.botcompany.de:8443/1013826/raw", "Numerous small improvements") + ". Finds memory leaks automatically (!). Ability to make \"alternative brains\" (multiple distinct instances of OS on a machine). Still compatible with Windows, Linux and Mac."))
+ imagePost("2018/06/19", "Reading my mails",
#1101332, "30%",
p("Not pretty (where are the graphic designers?), but it works.")
+ p(ahref("http://tinybrain.de/1016066", "Source code") + " (39 lines)")
, left := true)
+ imagePost("2018/06/18", "First operating system that learns",
#1101331, "30%",
p(b([[What is the world?]])), left := false)
+ imagePost("2018/06/18", "Advantages of a Java-based OS: Free Profiling",
#1101328, "30%",
p([[You get so many inspection capabilities for free in my OS.]])
+ p([[For example, you can always find out what the CPU is doing, down to every single line of code. And this incurs no performance overhead when not used.]]), left := true)
+ textPost("2018/06/17", "Memory leak eliminated", p("Gotcha.") + p("I told you Java is stable!"))
+ imagePost("2018/06/16", "Further chasing the memory",
#1101327, "30%",
p([[It has to be going somewhere. ]] + ahref("http://mail.openjdk.java.net/pipermail/discuss/2018-June/thread.html", "jdk-discuss") + [[ informed (list is moderated, read: another time waster).]]), left := true)
+ imagePost("2018/06/16", "New Look&Feel",
#1016391, "30%",
p([[Pretty, isn't it. Look&Feel is called ]] + ahref("http://jtattoo.net", "JTattoo") + [[.]]) + p([[Image was made with the automatic screenshot module on a very old Windows 7 machine where my OS runs flawlessly.]]), left := true)
+ textPost("2018/06/15", "Fixing the last memory leaks in Java 10", [[
I submitted this bug report to Oracle, and I'm making
super-fancy functions like cleanDefunctACCsInAllThreads that automatically fix
memory leaks other Java programmers have never heard of.
We will sail memory leak-free! :)
]]) + [[
Today we launched bla bla bla.
(No, seriously—we actually did. There is an awesome YouTube downloader in my operating system. I'm just too lazy to write.)
Now I need an awesome screenshot module and an awesome auto-upload-to-blog module.