Laxaro

View the latest news and breaking news today

inessential

Read Latest News Article in inessential.



inessential: evergreen status

the current goal is a spring 2018 release of evergreen 1.0. which is rather ambitious, i know, and i wouldn’t be shocked if it was spring 2019. but that’s the goal.the build is currently broken, has been broken for months, and will continue as broken for at least another few weeks.here’s the scoop: i decided to do syncing in 1.0. it will probably be just one system at first (most likely feedbin, since that’s what i use) — but this meant looking at the data and database level and figuring out what’s needed to make it usable when syncing. i’m in the middle of making the needed changes.(originally each syncing system was going to have its own database code...




republicans have been playing with racist fire for all of my 49 years

from nixon’s law-and-order and “silent majority” and southern strategy; to reagan’s campaign kickoff in philadelphia, missouri, his “welfare queens,” his war on drugs; to the willie horton ad, the culture war, rush limbaugh, gerrymandering, voter suppression, birtherism, and “calves the size of cantaloupes” — republicans have, for my whole life, very deliberately and consciously cultivated white grievance and racism.i was born in 1968. this has been going on the entire time.i always figured republicans were playing with these ugly matches because it was a means to an end: it was how they could gain enough power to do what their donors actually want — which is to sell off ...




inessential: square world

i keep thinking that the election of trump has turned us all into conservatives.i mean “conservative” in a more old-fashioned (and i think truer) sense than what is generally thought. i don’t mean republican — the republican party is a radical reactionary party, not at all conservative.i mean that we liberals and progressives have learned that national respect for truth, expertise, and empiricism is something we’re in danger of losing. it’s not a given. we can’t take rule of law for granted; we can’t assume our institutions won’t fly apart.everything good we’ve built is also the foundation on which further progress is made.the fight right now is to preserve those good thin...




james dempsey and the breakpoints benefit app camp for girls

on wednesday night i know where i’ll be — playing keyboard for a few songs at the james dempsey and the breakpoints concert benefitting app camp for g...




inessential: evergreen diary #1: open source

evergreen is a new feed reader for macs. it’s not actually done yet — in fact, it’s not even alpha yet, much less beta. it’s still in the painful-to-use stage, for sure.i’ve been working on it (among other things) on nights and weekends for a couple years. for much of the time i planned to make it a for-pay app — the plan was a free lite version and a for-pay version.but as time went on i was less and less motivated to make a for-pay app. doing all that stuff — dealing with licenses, money, a store, support, and everything else that goes along with a commercial app — just didn’t sound like any fun, and it would have taken time away from actually working on the app, which i...




the human story” screening in san jose

here’s the scoop. it’s sunday, june 4 at 5 pm. there’s a panel afterward with a bunch of people from the movie (includin...




inessential: json feed

i was hesitant, even up to this morning, to publish the json feed spec.if you read dave winer’s rules for standards-makers, you’ll see that we did a decent job with some of the rules — the spec is written in plain english, for example — but a strict application of the rules would have meant not publishing at all, since “fewer formats is better.”i agree completely — but i also believe that developers (particularly mac and ios developers, the group i know best) are so loath to work with xml that they won’t even consider building software that needs an xml parser. which says to me that json feed is needed for the survival of syndication.i could be wrong, of course. i admit.feed...




inessential: frontier diary #8: when worlds collide

i spent the weekend making a bunch of progress on the compiler. it has two pieces: a tokenizer, which i created by rewriting the original c code (langscan.c) in swift, and a parser.the parser in origfrontier was generated by macyacc, which is similar to yacc, which is similar to bison, which is on my mac. the thing about the parser is that it’s c code, and the rest of the app is swift.how do you bridge the two worlds? easy answer: with objective-c, which is a superset of c and which plays nicely (enough) with swift.so i renamed langparser.y — the rules file that the parser generator uses — to langparser.ym so that xcode would know to treat the generated parser source as objective-c. i e...




inessential: frontier diary #3: built-in verbs configuration

frontier’s standard library is known as its built-in verbs. there are a number of different tables: file, clock, xml, and so on. each contains a number of verbs: file.readwholefile, clock.now, and so on.most of these verbs are implemented in c, in the kernel, rather than as scripts. at the moment, to add one of these kernel verbs, you have to jump through a few hoops: edit a resource, add an integer id, add to a switch statement, etc. it’s a pain and is error-prone.so i want to re-do this in swift, because i’m all about swift. and i want adding verbs to be fool-proof: i don’t want to remember how to configure this every single time i add a verb. adding a verb needs to be easy.my thin...




values and progress on the language

i put the frontier repository up on github.(the build is currently broken. this is bad discipline, but since it’s still just me, i forgive myself. sometimes i run out of time and i just commit what i have.)the repo has my new code and it also contains frontierorigfork, which is the original frontier source with a bunch of deletions and some changes. the point is to give me 1) code to read and 2) a project that builds and runs on my 10.6.8 virtual machine.the original code is in c, and the port is, at least so far, all in swift. in the end it should be almost all in swift, but i anticipate a couple places where i may need to use objective-c.here’s one of the swift wins:valuessince frontier...




inessential: my microblog

i’m on manton‘s cool new microblogs system. here’s where you can follow me, once you’re on the system: http://micro.blog/brentsimmons.and here’s my microblog: http://brent.micro.blog/. (which you can read using ...




ballard, from the parallel universe

in another universe i didn’t decide to port frontier — instead, i started over from scratch on an app inspired by f...




inessential: frontier diary #7: pretty much everything throws

a script can throw an error, either intentionally (via the scripterror verb) or by doing something, such as referencing an undefined object, that generates an error.origfrontier was written in c, which has no error-throwing mechanism, and so it worked like this: most runtime functions returned a boolean (for success or failure), and the return value was passed in by reference. if there was an error, the function would set a global error variable and return false. the caller would then have to check that global to see if there was an error, and then do the right thing.this was not unreasonable, given the language and the times (early ’90s) and also given the need to be very careful about unw...




the quickdraw problem and where it led me

in my fork of frontier there are still over 600 deprecation warnings. a whole bunch of these are due to quickdraw calls.for those who don’t know: quickdraw was how, in the old days, you drew things to the mac’s screen. it was amazing for its time and pretty easy to work with. functions included things like moveto, lineto, drawline, frameoval, and so on. all pretty straightforward.these days we have core graphics instead, and we have higher-level things like nsbezierpath. quickdraw was simpler — though yes, sure, that was partly because it did less.* * *i was looking at all these deprecation warnings for quickdraw functions and wondering how i’m ever going to get through them.i could,...




save $300 on cocoaconf next door

my pals at cocoaconf asked me to remind you that the early bird sale ends in two weeks for cocoaconf next door — the one taking pla...




inessential: frontier diary #3: built-in verbs configuration

frontier’s standard library is known as its built-in verbs. there are a number of different tables: file, clock, xml, and so on. each contains a number of verbs: file.readwholefile, clock.now, and so on.most of these verbs are implemented in c, in the kernel, rather than as scripts. at the moment, to add one of these kernel verbs, you have to jump through a few hoops: edit a resource, add an integer id, add to a switch statement, etc. it’s a pain and is error-prone.so i want to re-do this in swift, because i’m all about swift. and i want adding verbs to be fool-proof: i don’t want to remember how to configure this every single time i add a verb. adding a verb needs to be easy.my thin...




inessential: frontier diary #3: built-in verbs configuration

frontier’s standard library is known as its built-in verbs. there are a number of different tables: file, clock, xml, and so on. each contains a number of verbs: file.readwholefile, clock.now, and so on.most of these verbs are implemented in c, in the kernel, rather than as scripts. at the moment, to add one of these kernel verbs, you have to jump through a few hoops: edit a resource, add an integer id, add to a switch statement, etc. it’s a pain and is error-prone.so i want to re-do this in swift, because i’m all about swift. and i want adding verbs to be fool-proof: i don’t want to remember how to configure this every single time i add a verb. adding a verb needs to be easy.my thin...




two good ideas that aren’t good anymore

strings in frontier are usually either pascal strings or handles.you probably don’t know what i’m talking about. i’ll explain.pascal stringsfrontier is a mac toolbox app that’s been carbonized just enough to run on os x. you may recall that the mac toolbox was written so long ago that the original api was in pascal. that pascal heritage lived on in many ways, even after everyone switched to c — and one of those ways was pascal strings.a pascal string is n bytes long, and the first byte specifies the length of the string, which leaves the rest of the bytes for the actual string. str255 was probably most common, and certainly is most common in frontier, but there are also smaller ...




inessential: cocoaconf near wwdc

there are a bunch of things happening near wwdc this year. me, i’ll be at cocoaconf next door. i’m not preparing a talk, but i’ll probably be on a panel. and hanging out.check out the speakers list, which includes omni’s own liz marley. and a bu...




ios, javascript, and object hierarchies

given x-callback-url and app url schemes in general it would be extremely cool to use those to create object ...