Language Selection

English French German Italian Portuguese Spanish

Programming: Python, RcppSimdJson and PHP

Filed under
Development
  • Listener GUI Started

    So with the code-context, the dictation in Listener is getting okay-ish. It's still pretty frustrating and error prone, but I can use it maybe 1/4 of the time (mostly for doc-strings). Part of the frustration is just that the language models are not yet well tuned for some commonly needed phrases that the tokeniser didn't generate for the code corpus, but a big part of it is that I don't yet have the correction/undo operations nor the navigation bits, so any mistake means editing by keyboard. The lack of a good contextual awareness/biasing model is also pretty big.

    So, I've been working on getting the GUI built up for doing corrections. As of now, a dbus service runs in the background which is driving the interpreter, and IBus and delivering the partial and final transcriptions via signals to the front-end GUI. I've also got a "floating window" that shows the text as you speak, though currently you have to install some KWin config to get it to float over other windows (due to focus-stealing protections). I'm thinking a KDE plasmoid that runs in the panel might be a better approach.

  • A user story about user stories

    The way I learned to use the term “user story”, back in the late 1990s at the beginnings of what is now called “agile programming”, was to describe a kind of roleplaying exercise in which you imagine a person and the person’s use case as a way of getting an outside perspective on the design, the documentation, and especially the UI of something you’re writing.

    For example:

    Meet Joe. He works for Randomcorp, who has a nasty huge old Subversion repository they want him to convert to Git. Joe is a recent grad who got thrown at the problem because he’s new on the job and his manager figures this is a good performance test in a place where the damage will be easily contained if he screws up. Joe himself doesn’t know this, but his teammates have figured it out.

    Joe is smart and ambitious but has little experience with large projects yet. He knows there’s an open-source culture out there, but isn’t part of it – he’s thought about running Linux at home because the more senior geeks around him all seem to do that, but hasn’t found a good specific reason to jump yet. In truth most of what he does with his home machine is play games. He likes “Elite: Dangerous” and the Bioshock series.

    [...]

    Point three is that design by user story is not a technique for generating code, it’ s a technique for changing your mind. If you approach it in an overly narrow and instrumental way, you won’t imagine apparently irrelevant details like what kinds of video games Joe likes. But you should do that sort of thing; the brain hack works in exact proportion to how much imaginative life you give your characters.

    (Which in particular, is why “As an X, I want to do Y” is such a sadly reductive parody. This formula is designed to stereotype the process, but stereotyping is the enemy of novelty, and novelty is exactly what you want to generate.)

    A few of my readers might have the right kind of experience for this to sound familiar. The mental process is similar to what in theater and cinema is called “method acting.” The goal is also similar – to generate situational responses that are outside your normal habits.

    Once again: you have to get past tools and practices to discover that the important part of software design – the most difficult and worthwhile part – is mindset. In this case, and temporarily, someone else’s.

  • RcppSimdJson 0.0.6: New Upstream, New Features!

    A very exciting RcppSimdJson release with the updated upstream simdjson release 0.4.0 as well as a first set of new JSON parsing functions just hit CRAN. RcppSimdJson wraps the fantastic and genuinely impressive simdjson library by Daniel Lemire and collaborators. Via very clever algorithmic engineering to obtain largely branch-free code, coupled with modern C++ and newer compiler instructions, it results in parsing gigabytes of JSON parsed per second which is quite mindboggling. The best-case performance is ‘faster than CPU speed’ as use of parallel SIMD instructions and careful branch avoidance can lead to less than one cpu cycle use per byte parsed; see the video of the recent talk by Daniel Lemire at QCon (which was also voted best talk). The very recent 0.4.0 release further improves the already impressive speed.

  • PHP 8.0.0 Alpha 1 available for testing

    The PHP team is pleased to announce the first testing release of PHP 8.0.0, Alpha 1. This starts the PHP 8.0 release cycle, the rough outline of which is specified in the PHP Wiki.

  • PHP 8.0 Alpha 1 Released - Running Faster And With New Features

    PHP 8.0 Alpha 1 was just released as the first development snapshot for this major PHP programming language update due to ship around the end of November.

    Most notable with PHP 8.0 is the just-in-time (JIT) support and other performance improvements to accelerate the already increasingly speedy PHP7 compared to the sluggish PHP5 days. Earlier this month I ran some PHP 8.0 benchmarks including JIT too and in both modes PHP 8.0 is shaping up to be faster than prior PHP releases. I'll have some more numbers out soon.

  • PHP version 7.3.20RC1 and 7.4.8RC1

    RPM of PHP version 7.4.8RC1 are available as SCL in remi-test repository and as base packages in the remi-test repository for Fedora 32 or remi-php74-test repository for Fedora 30-31 and Enterprise Linux 7-8.

    RPM of PHP version 7.3.20RC1 are available as SCL in remi-test repository and as base packages in the remi-test repository for Fedora 30-31 or remi-php73-test repository for Enterprise Linux.

First PHP 8 alpha released

  • First PHP 8 alpha released

    The PHP project has released the first alpha of PHP 8, which is slated for general availability in November 2020. This initial test release includes many new features such as just-in-time (JIT) compilation, new constructs like Attributes, and more. One of twelve planned releases before the general availability release, it represents a feature set that is still subject to change.

    The PHP 8 release is being managed by contributors Sara Golemon and Gabriel Caruso. Dubbed "Alpha 1", this first release of PHP 8 is one of three releases to be done prior to a feature freeze. During this time, more widespread testing of new features is performed by the community and implementation details are worked out. This process will continue until August 4, at which point the feature set will be frozen to coincide with the first beta release scheduled for August 6.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

Games: DRAG, Valve Index kit and Inscryption

  • DRAG | Linux Gaming | Ubuntu 20.04 | Native

    DRAG running natively through Linux.

  • Sci-fi racer with fancy 4-point physics 'DRAG' is now in Early Access

    Orontes Games have finally unleashed DRAG, their sci-fi racer with advanced 4-point physics into Early Access. Note: key provided to GOL by the developer. Introducing what they say is a "new kind of vehicle-physics", their 4-way contact point traction technology (or 4CPT-technology for short) simulates every component of the vehicles in real time. The result is supposed to give you "realistic, dynamic" behaviour with a full damage model, so expect to see wheels flying across your screen when in multiplayer.

  • My experiences of Valve's VR on Linux

    As the proud and excited owner of a shiny new Valve Index kit to go with my almost-new all-AMD rig, I thought I’d outline the journey to getting it all working, exclusively on Linux. Now bear in mind that I’m not amazingly Linux-savvy. I’ve been using it since the early 2000’s, sure, and full time, exclusively, since 2013, but I’m not very interested in learning the guts of this stuff. I’m extremely technical as a network nerd, but my O/S is just a tool to let me run cool things. I want to be a “normal” consumer of that O/S and if things don’t work out of the box, I take a dim view of it and I don’t have a lot of patience for terminal hacks or “compiling my own kernel”.

  • Inscryption from the developer of Pony Island has a new trailer

    Inscryption from Daniel Mullins Games (Pony Island, The Hex) sounds absolutely wild and it's got a brand new trailer but we've got quite some time to wait on it. Based upon the title Sacrifices Must Be Made, which Mullins made for the Ludum Dare 43 Game Jam, Inscryption is described as an "inky black card-based odyssey that blends the deckbuilding roguelike, escape-room style puzzles, and psychological horror into a blood-laced smoothie".

LibreOffice 7.0: A week in stats

One week ago, we announced LibreOffice 7.0, our brand new major release. It’s packed with new features, and has many improvements to compatibility and performance too. So, what has happened in the week since the announcement? Let’s check out some stats… These are just stats for our official downloads page, of course – some Linux users will have acquired the new release via their distribution’s package repositories. Read more Also: LibreOffice 7.0 Is Already Approaching A Half-Million Downloads

LibreELEC (Leia) 9.2.4

LibreELEC 9.2.4 (Leia) has arrived based upon Kodi v18.8. Changes since 9.2.3: firmware fixes for RPi (fixes booting issues) Kodi 18.8 Kodi 19 Matrix: We have currently no plans yet to create an official Alpha release of LE10 with the Alpha version of Kodi 19. Due the drawn out release cycle of Kodi and the experiences from the past few years we are waiting a bit longer to avoid major problems. Nightly builds could be downloaded like usual, that includes the latest unstable development snapshot of LE10/Kodi19. Read more

Android Leftovers