Older blog entries for average (starting at number 11)

6 Jun 2013 (updated 6 Jun 2013 at 17:29 UTC) »

Advogato Observer hell sucks. I can't even post a legit project.

And why doesn't the advogato home page ever change? The last news story is dated March, 2013...

Okay, I know this is old, OLD, news, but did anybody else feel let-down by Python v3.0? I was away from civilization at the time and couldn't contribute to the dialog of making "Python3000", so have nothing against the developers who put it together and praise them (and Guido) for their efforts. Nevertheless, I feel the lack of 2.x migration is due to it missing the mark of a real vision of what Python could be.

I've started a page on the WikiWikiWeb called PythonThreeThousand if anybody wants to talk about what a real backward-incompatible revamping of Python would look like.

Hopefully, this isn't too imflammatory. Cheers!

MarkJanssen

4 Jun 2013 (updated 4 Jun 2013 at 23:22 UTC) »

For anyone who wants to implement an arbitrary-precision integer library, the best technique (I'll argue) is to use simple strings and base256 encoding, gulped at word-sized intervals, dependent on machine architecture. On a 64-bit machine, that means we get to calculate 8 bytes at a time! Kickass.

Techniques for translating back and forth between base256 and base10 (for user I/O) are simple and well-known, but all the calculations will be done at near native CPU integer speed with minimal effort between gulps. Of course, things should be implemented with an eye for good cache performance.

For "floating point" or real-number arithmetic, a simple Rational class/struct implemented with two BigInts (numerator and denominator) can create a lossless, full-browed, real-number library.

Let me know if this is redundant.

4 Jun 2013 (updated 4 Jun 2013 at 23:23 UTC) »

Okay, we've all seen decentralized social media sites that suffer from a common problem: rapid elevation of a few posts due to a phenomenon caused by ordering content deterministically by highest rank (forming a positive feedback loop where the most popular items keep getting visibility and voted-on more than others) or due to screen size and "first post" phenomenon.

The solution is to use a non-arbitrary probabilistic ordering algorithm. This algorithm is shown on WardsWiki at ProbabilisticChooser for anyone who wants to use it for non-commercial applications.

Let me know if you use it! Cheers,

MarkJanssen

(Also, please vote me up and get me out of this [Observer] hell!)

3 May 2013 (updated 27 May 2013 at 20:40 UTC) »

A proof of the cluelessness of economic and political and even scientific leaders:

1) Cheap energy creates exponential growth because it will be easier to use it than actually do the equivalent labor.
2) Nuclear energy will use the last reserve of energy stored in the universe. Far beyond earth history (like fossil fuel), it goes all the way to the big bang: the energy in the atom. After that, it's GAME OVER
3) Exponential growth will always deplete resources in linear time. (Remember the story about the king, the checkerboard, and the grains of rice?)
4) Conclusion: The only way sustainable future is to make a 180 degree course change and transition from an economy of expansion and growth, to one of collaboration and interconnectedness: the CreativeEconomy.

...an "Economic Sanctuary". Help me code it.

3 May 2013 (updated 3 May 2013 at 23:10 UTC) »

Holy shit, I didn't know the problem mentioned in my April 14th entry was so deep. It's not only OOP that needs factored (a 20 year problem), but the whole frickin' field needs re-invented (a 50 year refactoring).

Seriously, all the HolyWars and LanguageWars all revolve around a subtle, unconscious use of the same lexicon for two entirely separate different domains, one involving abstract LambdaCalculus and the other involving BooleanLogic and TuringMachines -- something tied to actual hardware which has to obey the laws of physics.

See ComputerScienceVersionTwo.

23 Apr 2013 (updated 1 May 2013 at 23:48 UTC) »

Could someone certify me out of this "Observer" oblivion. I've been here since 2000, for chrissake's! And an advocate for F/OSS software since before then. I just left for about 10 years and just got back where apparently I lost even my "Apprentice" status.

Thanks to the three who helped certify me. But it still doesn't seem to change my status.... Confused... :

23 Apr 2013 (updated 28 Apr 2013 at 22:53 UTC) »

I'm proposing the concept of a Kolmogorov Quotient (named after AndreKolmogorov of AlgorithmicInformationTheory fame) as a calculable number that measures the amount that a "programming language" simplifies the complex. That is, the amount of expressivity of a programming language. This idea of "simplification" is a factor of text-wise reduction (fewer characters needed to express a complex concept) and some other less-easy to quantify concept of maintainability. Fleshing out this latter concept, it is clear it has to do with the ease of establishing programmer ''consensus'' for the same task.

It is a quotient so that higher Kolmogorov numbers for a given language implies a reduction in the Complexity of writing the code to solve the problem.

I suggest Python or Ruby has the highest Kolmogorov Quotient. But see KolmogorovQuotient.

14 Apr 2013 (updated 14 Apr 2013 at 03:58 UTC) »

Okay as part of building this idea of a data ecosystem mentioned earlier, I'm realizing that the whole OOP paradigm needs refactored. Starting with AlanKay's definitions for Object Orientation, I invite the community to help me re-evaluate the paradigm.

Kay gives 6 points in defining his vision of his Object Architecture at AlanKaysDefinitionOfObjectOriented

I've rebutted them with ObjectOrientedRefactored. I invite others to comment.

14 Apr 2013 (updated 14 Apr 2013 at 03:50 UTC) »

Every internet community site suffers from this common problem once it scales past about a 100 community entries: the problem of information overload and disarray when attempting to combine most recent items with most popular. Either you have the problem of combining both on one page or the problem of how items from recent days become integrated with the list of most popular items.

The PangaiaProject finds that there is no algorithmic solution to this problem. The only way to solve this problem is to add another [visual] dimension.

The Pangaia project takes the approximately 2.3 dimensions of the current WWW and transforms it into a fully crowd-sourced and navigable three dimensional data universe. It will be cool.

VPython or Processing will likely be the language for implementing the pangaia codes and adding a 3-dimensional visual layer to the Internet.

2 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!