Language Selection

English French German Italian Portuguese Spanish

Development

"Microsoft may find the developers it just paid so much to reach slipping from its grasp."

Filed under
Development
Microsoft
  • Mixed Reaction
  • After Github purchase, Microsoft remains a relatively untrusted open source player to some
  • What is GitHub?

    GitHub is now the de facto home of open-source software. But Microsoft’s acquisition reignited a debate over the platform’s centrality. Microsoft assures users the service is safe under its stewardship, but many are wary. When Mr Ballmer spoke of developers, he had a specific sort in mind: those using Microsoft’s tools to build projects for Microsoft products. He once called open-source Linux a “cancer”, which would spread uncontrollably. In a sense, his words proved prophetic: today, open-source software is everywhere, from websites to financial markets to self-driving cars. Under Mr Nadella’s leadership, Microsoft has embraced open-source development. In buying GitHub it hopes to gain the trust of developers it once spurned. But some wonder if the change is complete, or if Microsoft will use its newly bought dominance of open-source hosting to push its own products. Alternatives to GitHub—some themselves open-source—wait in the wings. If it is not careful, Microsoft may find the developers it just paid so much to reach slipping from its grasp.

Zapcc Caching C++ Compiler Open-Sourced

Filed under
Development

Remember the Zapcc compiler that focused on lightning fast compiler times? It's now been open-sourced.

Zapcc is the LLVM/Clang-based C++ compiler that we have been covering since 2015 when it began promoting itself as a much faster C++ compiler than Clang itself. Zapcc employs aggressive caching and other techniques in an effort to significantly speed up compile times while being a drop-in replacement to GCC or Clang. Last year Zapcc reached the v1.0 milestone, but we haven't heard much since until finding out this weekend that it's been open-sourced.

Read more

BLUI: An easy way to create game UI

Filed under
Development
Gaming

As part of an indie game development studio, I've experienced the perks of using open source plugins on proprietary game engines. One open source plugin, BLUI by Aaron Shea, has been instrumental in our team's development process. It allows us to create user interface (UI) components using web-based programming like HTML/CSS and JavaScript. We chose to use this open source plugin, even though Unreal Engine (our engine of choice) has a built-in UI editor that achieves a similar purpose. We chose to use open source alternatives for three main reasons: their accessibility, their ease of implementation, and the active, supportive online communities that accompany open source programs.

In Unreal Engine's earliest versions, the only means we had of creating UI in the game was either through the engine's native UI integration, by using Autodesk's Scaleform application, or via a few select subscription-based Unreal integrations spread throughout the Unreal community. In all those cases, the solutions were either incapable of providing a competitive UI solution for indie developers, too expensive for small teams, or exclusively for large-scale teams and AAA developers.

After commercial products and Unreal's native integration failed us, we looked to the indie community for solutions. There we discovered BLUI. It not only integrates with Unreal Engine seamlessly but also maintains a robust and active community that frequently pushes updates and ensures the documentation is easily accessible for indie developers. BLUI gives developers the ability to import HTML files into the Unreal Engine and program them even further while inside the program. This allows UI created through web languages to integrate with the game's code, assets, and other elements with the full power of HTML, CSS, JavaScript, and other web languages. It also provides full support for the open source Chromium Embedded Framework.

Read more

Also: Why (some) agile teams fail

Mesa Graphics in Linux

Filed under
Development
Graphics/Benchmarks
Linux
  • Mesa Rolls Out Support For ARB_sample_locations

    Mesa has been plumbed in to support the ARB_sample_locations OpenGL extension and is now exposed with the Nouveau NVC0 Gallium3D driver.

    ARB_sample_locations was part of the "OpenGL 2015" update but hasn't made it into a released version of OpenGL, hence why it wasn't a priority for Mesa developers. But now it's been wired up within core Mesa and is currently flipped on for NVC0 in Mesa 18.2-devel.

  • Mesa's VirGL For OpenGL Within VMs Now Supports Tessellation Shaders

    It was just days ago that the VirGL driver stack -- which is used for supporting OpenGL hardware acceleration within guest VMs that is passed onto the host's driver -- picked up FP64 support while now its latest addition is ARB_tessellation_shader support.

    With the latest Mesa Git and the VirGL renderer library code is updated (as well as your host OpenGL driver supporting GL4), there is now support for tessellation shaders. The support has landed in Mesa 18.2 Git for this popular OpenGL 4.0 feature.

Programming With Python (LWN)

Filed under
Development
  • Unplugging old batteries

    Python is famous for being a "batteries included" language—its standard library provides a versatile set of modules with the language—but there may be times when some of those batteries have reached their end of life. At the 2018 Python Language Summit, Christian Heimes wanted to suggest a few batteries that may have outlived their usefulness and to discuss how the process of retiring standard library modules should work.

    The "batteries included" phrase for Python came from the now-withdrawn PEP 206 in 2006. That PEP argued that having a rich standard library was an advantage for the language since users did not need to download lots of other modules to get real work done. That argument still holds, but there are some modules that are showing their age and should, perhaps, be unplugged and retired from the standard library.

  • Advanced computing with IPython

    If you use Python, there's a good chance you have heard of IPython, which provides an enhanced read-eval-print loop (REPL) for Python. But there is more to IPython than just a more convenient REPL. Today's IPython comes with integrated libraries that turn it into an assistant for several advanced computing tasks. We will look at two of those tasks, using multiple languages and distributed computing, in this article.

    IPython offers convenient access to documentation, integration with matplotlib, persistent history, and many other features that greatly ease interactive work with Python. IPython also comes with a collection of "magic" commands that alter the effect of single lines or blocks of code; for example, you can time your code simply by typing %%time at the prompt before entering your Python statements. All of these features also work when using the Jupyter notebook with the IPython kernel, so you can freely switch between the terminal and the browser-based interface while using the same commands.

Qt and Python

Filed under
Development
  • Qt Contributors’ Summit 2018 wrap-up

    Qt Contributors’ Summit 2018 is over. Two days of presentations and a lot of discussions during presentations, talk of Qt over coffee and lunch and in restaurants in the evening.

  • Qt 6.0 Might Be Coming After Qt 5.14, Could Depend Upon C++17

    Since last year there has been more talk and early planning around the eventual Qt 6.0 milestone. It's looking now like Qt 6.0 might happen after Qt 5.14, or likely in 2020.

    Last year there were developer discussions about starting Qt6 work after Qt 5.11, which was released at the end of May. Previous discussions of Qt6 have entailed QIODevice support, a Qt Quick scene graph, improved accessibility, and a Vulkan back-end for Qt Quick.

  • Qt For Python 5.11 Released As The First Official Build

    The past few months The Qt Company has been overhauled PySide2 as Qt For Python, a big improvement to the Python bindings to the Qt tool-kit. Out today is Qt For Python 5.11 as the first official release under the new branding.

  • Qt for Python 5.11 released

    As the version tag implies, it is based on Qt 5.11 and therefore the first release that supports the Qt 5 series. At large the project will follow the general Qt release schedule and versions. Although this is still a Technical Preview we will support the release with the usual support pattern (except the compatibility one). Unfortunately, earlier versions of Qt than 5.11 are not supported. It is available for open source and commercial Qt for Application Development users. Note that there is only one package for commercial and open source users. We hope we can receive plenty of feedback on what works and what does not. We want to patch early and often.

  • Python 3.7 Release Candidate Arrives, Final Expected At The End Of June

    Python 3.7.0 RC1 is available today as the last step prior to issuing this next feature release of Python 3 at month's end.

    The Python 3.7.0 release candidate was issued today along with the Python 3.6.6 RC1. The current plan is to release both of these new Python versions on 27 June unless some blocker bugs come about that would delay the release.

  • Python 3.7.0rc1

    This release, 3.7.0rc1, is the final planned release preview. Assuming no critical problems are found prior to 2018-06-27, the scheduled release date for 3.7.0, no code changes are planned between this release candidate and the final release.

NSA could have access to data on Microsoft-owned GitHub

Filed under
Development
Microsoft

The NSA could have access to the code repositories residing on GitHub, which is now owned by Microsoft, if past practices of the Redmond-based software giant are any indicator.

Microsoft announced its acquisition of GitHub on 5 June. The company said at the time that GitHub had about 28 million developers working on 80 million repositories. Microsoft has been one of the bigger code contributors to the site.

The reaction from open-source developers to the acquisition was not exactly been salutary as can be seen from comments on Linux Weekly News.

Read more

Programming Leftovers

Filed under
Development
  • This Week in Numbers: Managing JavaScript Packages with NPM and Yarn

    This week we analyze more data from the Node.js Foundation‘s user survey. Almost three-quarters (73 percent) of survey respondents said they use a package manager. NPM was used by 60 percent and Yarn cited by 13 percent. Since Yarn sits on top of NPM, in reality these respondents are referring to an interface or tool they actually use day-to-day. Yarn’s use rose 44 percent compared to last year’s study.

  • RcppZiggurat 0.1.5

    A maintenance release 0.1.5 of RcppZiggurat is now on the CRAN network for R.

  • RcppGSL 0.3.6

    A maintenance update 0.3.6 of RcppGSL is now on CRAN. The RcppGSL package provides an interface from R to the GNU GSL using the Rcpp package.

  • A Gentle Intro to PLT

    Programming Language Theory (PLT) is an extremely rich subject with a relatively high bar to entry. Most of the literature is written for a reader already well versed in the subject; it’s hard to find a tractable introduction. This post will take you through the construction of a simplistic toy programming language (and an interpreter for it) from first principles. I assume no knowledge on your part, aside from general programming experience.

Early PHP 7.3 Performance Benchmarks Are Looking Good

Filed under
Development
Graphics/Benchmarks

Released this week was the first alpha of PHP 7.3 and I decided to take it for a spin with some benchmarks. While not as dramatic as going from PHP5 to PHP 7.0, the performance of PHP7 continues getting better.

PHP 7.3 so far introduces several new functions, finally drops support for BeOS, updates the bundled SQLite version, expands WebP support, improves PHP garbage collection, and other enhancements. PHP 7.3 is tentatively planned for release at the end of November while over the months ahead are more alphas/betas/RCs.

Read more

Programming: GNOME Builder, Eclipse Che, Rust GUI

Filed under
Development
  • A new completion engine for Builder

    Since my initial announcement of Builder at GUADEC in 2014, I’ve had a vision in the back of my mind about how I’d like completion to work in Builder. However, there have been more important issues to solve and I’m just one person. So it was largely put on the back burner because after a few upstream patches, the GtkSourceView design was good enough.

    However, as we start to integrate more external tooling into Builder, the demands and design of what those completion layers expect of the application have changed. And some of that is in conflict with the API/ABI we have in the long-term stable versions of GtkSourceView.

  • Eclipse Che 6.6 Release Notes

    Eclipse Che 6.6 is here!

  • To do a Rust GUI

    Rust Qt Binding Generator (Logo by Alessandro Longo)

    Rust Qt Binding Generator lets you combine Rust code with a Qt1 graphical application. A previous blog shows how to make a simple clock. It’s a good idea to read that post before reading this more advanced post, because in this post we are getting serious.

    This blog post shows how to write a to-do application. The data model is a list of to-do items. The source code for this example is available in the folder examples/todos in the Rust Qt Binding Generator repository.

    Here is a screenshot of the finished application. The to-do application shows the steps to implement the to-do application. This application was the subject of a presentation on Rust Qt Binding Generator.

Syndicate content

More in Tux Machines

Android Leftovers

SparkyLinux 5.4 GameOver, Multimedia, and Rescue Special Editions Are Out Now

Released last week on June 11, 2018, the SparkyLinux 5.4 "Nibiru" rolling release operating system was available only as LXQt, MinimalGUI, and MinimalCLI editions. Today, the project launches three more editions, namely GameOver, Multimedia, and Rescue. "New live/install ISO images of special editions of SparkyLinux 5.4 "Nibiru": GameOver, Multimedia & Rescue are out. Sparky 5 follows the rolling release model and is based on Debian testing branch "Buster"," reads today's announcement. Read more

KDE Plasma 5.13 Desktop Environment Gets First Point Release, over 20 Bugs Fixed

The KDE Plasma 5.13 desktop environment launched a week ago as the best release of the acclaimed desktop designed for GNU/Linux distributions, introducing new lock and login screens, redesigned system settings, Plasma Browser Integration, Plasma Discover enhancements, and many other improvements and changes. Now, users can update their KDE Plasma 5.13 installations to the first point release, KDE Plasma 5.13.1, which brings more than 20 bug fixes across various components, such as Plasma Discover, Plasma Add-ons, Plasma Desktop, Plasma Networkmanager (plasma-nm), KWin, and KDE Hotkeys. Read more

Qt 5.11.1 Released

I am pleased to announce that Qt 5.11.1 is released today. As a patch release Qt 5.11.1 does not add any new functionality, but provides important bug fixes and other improvements. New Qt 5.11.1 is first patch release for Qt 5.11 series. There are fixes for over 150 bugs and it contains more than 700 changes compared to Qt 5.11.0. For details of the most important changes, please check the Change files of Qt 5.11.1. And don’t worry if some fix is missing from new Qt5.11.1 release; we are planning to release Qt 5.11.2 at the beginning of September. Read more Also: Qt 5.11.1 Released With 150+ Bug Fixes