• chevron_right

    After 18 months, GitHub’s big code search overhaul is generally available / ArsTechnica · Monday, 8 May, 2023 - 20:48

GitHub has announced the general availability of a ground-up rework of code search that has been in development for years.

The changes include substantial new functionality that is significantly more aware of context. The company says its new code search is "about twice as fast" as the old code search and that it "understands code, putting the most relevant results first."

That's on top of redesigned search and code view interfaces. The new search interface offers suggestions and completions, and categorizes and formats the results more intelligently.

Read 6 remaining paragraphs | Comments

  • chevron_right

    Two core Unix-like utilities, sudo and su, are getting rewrites in Rust / ArsTechnica · Monday, 1 May, 2023 - 17:05

Two of the most fundamental tools of the modern Unix-like command line, sudo and su, are being rewritten in the modern language Rust as part of a wider effort to get critical but aging infrastructure pieces replaced by memory-safe counterparts.

As detailed at Prossimo , a joint team from Ferrous Systems and Tweede Golf , with support from Amazon Web Services, is reimplementing sudo and su. These utilities allow a user to perform actions with the privileges of another user (typically a higher-level superuser) without having to learn and enter that other user's password. Given their age and wide usage, the Prossimo team believes it's time for a rework.

"Sudo was first developed in the 1980s. Over the decades, it has become an essential tool for performing changes while minimizing risk to an operating system," writes Josh Aas. "But because it's written in C, sudo has experienced many vulnerabilities related to memory safety issues."

Read 4 remaining paragraphs | Comments

  • chevron_right

    cURL, the omnipresent data tool, is getting a 25th birthday party this month / ArsTechnica · Friday, 10 March, 2023 - 18:28 · 1 minute

Two men curling in blurry motion photo

Enlarge / Curling, like the cURL project, requires precision and is underappreciated.

When you first start messing with the command line, it can feel like there's an impermeable wall between the local space you're messing around in and the greater Internet. On your side, you've got your commands and files, and beyond the wall, there are servers, images, APIs, webpages, and more bits of useful, ever-changing data. One of the most popular ways through that wall has been cURL, or "client URL," which turns 25 this month.

The cURL tool started as a way for programmer Daniel Stenberg to let Internet Chat Relay users quickly fetch currency exchange rates while still inside their chat window. As detailed in an archived history of the project , it was originally built off an existing command-line tool, httpget, built by Rafael Sagula. A 1.0 version was released in 1997, then changed names to urlget by 2.0, as it had added in GOPHER, FTP, and other protocols. By 1998, the tool could upload as well as download, and so version 4.0 was named cURL.

Over the next few years, cURL grew to encompass nearly every Internet protocol, work with certificates and encryption, offer bindings for more than 50 languages, and be included in most Linux distributions and other systems. The cURL project now encompasses both the command-line command itself and the libcurl library. In 2020, the project's history estimated the command and library had been installed in more than 10 billion instances worldwide.

Read 2 remaining paragraphs | Comments

  • Ga chevron_right

    Machine learning made easy with Python - Solve real-world machine learning problems with Naïve Bayes classifiers / gadgeteerza-tech-blog · Friday, 29 January, 2021 - 10:50

Naïve Bayes is a classification technique that serves as the basis for implementing several classifier modeling algorithms. Naïve Bayes-based classifiers are considered some of the simplest, fastest, and easiest-to-use machine learning techniques, yet are still effective for real-world applications.

Naïve Bayes is based on Bayes' theorem, formulated by 18th-century statistician Thomas Bayes. This theorem assesses the probability that an event will occur based on conditions related to the event. For example, an individual with Parkinson's disease typically has voice variations; hence such symptoms are considered related to the prediction of a Parkinson's diagnosis. The original Bayes' theorem provides a method to determine the probability of a target event, and the Naïve variant extends and simplifies this method.

This code and project will be of interest to any Python (or even other) programmers wanting to go to the next level in terms of building machine learning predictability into their applications.


#technology #machinelearning #python #programming #predictions

  • Ga chevron_right

    10 of the Best Linux Debuggers for Software Engineers including one for Bash scripts / gadgeteerza-tech-blog · Thursday, 28 January, 2021 - 19:56

Debuggers are essential for locating bugs in programs. There is a plethora of robust Linux debuggers that make it easy to find weak points in your applications. MakeTechEasier outlines some of these applications in the link below. Try some of these tools to get a feel of how debugging works in Linux.

BASH Debugger or bashdb is a simple, but useful, Linux debugger. You can use it for analyzing your bash scripts during execution and can be pretty useful if you start to do more complex bash scripts.


#technology #linux #programming #debugging

  • Ga chevron_right

    Struggling with regular expressions? Then visit 'Regex Crossword', a site to learn them through a Sudoku-like game / GamingOnLinux · Wednesday, 1 April, 2020 - 15:11 · 1 minute

First off, for those readers who aren’t programmers, it’s important to define what are the (in)famous regular expressions. According to the Regex Crossword FAQ…

A regular expression (regex or regexp for short) is a special text string for describing a search pattern. (…) For example, if you wanted to find all references to the name "Casper" but using all the different ways of spelling it, you could use the regular expression [CK]asp[ae]r , which will match both "Casper", "Caspar", "Kasper" and "Kaspar".

The thing is: this definition by no means reflects how insanely difficult it is to learn them. There is no other way than repeatedly using them until you eventually start memorizing them, a process that is particularly arduous and unintuitive. This is what Regex Crossword aims to prevent, by hosting a series of Sudoku-like puzzles to help you master them; it won’t be an easy process still, but at least it may be more fun…

On the left you can see a typical puzzle, in which you must carefully  observe the regexs that represent every row or column, and write a letter from a selected list that matches both criteria. You can always press the "Help" button at the top right of the website to visualize a diagram with all the information you need. As you can see, it’s easy to understand the rules, but hard to master them.

The website features several sections to make the levels as varied as possible. There is also another area which includes levels made by other users , along with a stats page . Also, if you check the Help and FAQ section, you will be recommended other tools and online resources in case you want to learn a bit more about regexs . Don’t forget to use an account so that your progress on the levels can be saved.

Finally, although this project is "something we do for fun" , you can donate via PayPal or several cryptocurrencies (check the Help and FAQ section to see which ones are available) to help with hosting expenses and to keep ensuring further improvements and levels.

Visit Regex Crossword via the following link .

Article from - do not reproduce this article without permission. This RSS feed is intended for readers, not scrapers.