Efficiently Generating Python Hash Collisions

2019-07-23 19:06:28

Linux System Programming by Robert Love – Reading Notes

2019-07-23 17:34:26

adding google sign-in to your webapp — pt 1

2019-07-23 17:13:31

The Celery Python Guide: Basics, Examples and Useful Tips

2019-07-23 17:12:58

C# Design Patterns: The Facade Pattern

2019-07-23 17:12:50

Building the next version of our infrastructure

2019-07-23 16:59:00

The pursuit of our mission to connect the world’s professionals to make them more productive and successful is deeply dependent on the technology and infrastructure we build and maintain. Ten years ago, we had 50 million members. Fast forward five years and that number jumped to 300 million. Today, we have more than 645 million members, 20 million jobs and someone is hired using LinkedIn every eight seconds. Our focus on building a platform that created opportunities for people and businesses has remained steadfast, and our capabilities have evolved to match that.  As we’ve grown, […]

Adding another permission? Questions and suggestions

2019-07-23 16:33:34

So, you’re thinking of adding a new permission prompt to the Web platform? Specification authors and feature designers may find this list of questions useful to think through. This was inspired by discussions at the W3C Workshop on Permissions and User Consent held last September in San Diego. A full workshop report is available from […]

When Django Is Better Than JavaScript Frameworks for Business Processes

2019-07-23 16:23:39

Django, one of the most widely-used web frameworks in the world, has many advantages over JavaScript-based frameworks due to the flexibility of Python. Although some people view Django as old technology compared to the hot JavaScript framework of the year, Django is mature, stable, easy to use, and better suited for a wide range of business tasks. I’ll illustrate this point with components for a VR or 360 image management system based on Django that provides the following functionality:

SD Times news digest: Serverless Framework expanded, Docker Enterprise 3.0 GA released, and Apache Netbeans 1.1

2019-07-23 15:48:58

The Serverless Framework has been expanded to include real-time monitoring, testing, secrets management and security features in a unified experience.  “Our new goal is to give developer teams everything they need to build incredible amounts of amazing work, without having to ask, ‘Now, how do I test, monitor and secure this?,’ ” wrote Austen Collins, … continue reading The post SD Times news digest: Serverless Framework expanded, Docker Enterprise 3.0 GA released, and Apache Netbeans 1.1 appeared first on SD Times.

How to Use Topgrade to Easily Upgrade Your Linux System

2019-07-23 15:29:23

Topgrade can upgrade almost everything on your Linux system. It supports the package manager, Ruby Gems, Atom packages, Linuxbrew, Snap and Flatpak apps.

503 Service Unavailable - Evert Pot

2019-07-23 15:00:00

503 Service Unavailable is a status that a server can send when they are overloaded, or otherwise incapable of handling a request. It couls still be starting, or it perhaps the application is partially down. When this status is returned, a server can optionally include a Retry-After header to tell a client when to try the request again. Example HTTP/1.1 503 Service Unavailable Content-Type text/plain Retry-After: 1800 System overload! Give us some time to increase capacity. References RFC7231, Section 6.6.4 - 503 Service Unavailable

Sams Teach Yourself JavaScript in 24 Hours (7e)

2019-07-23 14:13:48

Author: Phil BallardPublisher: Sams Teach YourselfDate: November 2018Pages: 432ISBN: 978-0672338090Print: 0672338092Kindle: B07H2KXFWPAudience: Would-be JavaScript web devsRating: 4Reviewer: Ian ElliotJavaScript is an easy to learn language so can 24 hours turn you from a beginner to an expert? Read more...

Twisted elliptic curves

2019-07-23 13:18:00

This morning I was sitting at a little bakery thinking about what to do before I check out of my hotel. I saw that the name of the bakery was Twist Bakery & Cafe, and that made me think of writing about twisted elliptic curves when I got back to my room. Twist of an […]

Community News: Latest PECL Releases (07.23.2019)

2019-07-23 13:05:01

Latest PECL Releases:mysql_xdevapi 8.0.17 WL#12190-DevAPI: indexing array fields WL#12683-DevAPI: Add overlaps and not_overlaps as operator WL#13012: Deprecate methods WL#11852: erase temporary protobuf files at 'make clean' step orabug #28605926: unclear _id related messages with 5.7 adapt sources to build with PHP-7.4 couchbase 3.0.0alpha4 * fourth alpha release

Refactoring to Kotlin Codelab

2019-07-23 12:00:00

Learn how to convert Java to Kotlin by following Kotlin's idioms with Google Developers Codelabs. Refactoring to Kotlin, which is available in English, Brazilian and Chinese, provides a guided, hands-on coding experience in a running time of just less than an hour. Read more...

Next.js Adds Built-In Zero-Config TypeScript Support

2019-07-23 11:38:10

Next.js version 9 has been released with built-in support for zero-config TypeScript, along with automatic static optimization and API routes. Next.js is a toolkit for universal, server-rendered (or statically pre-rendered) React.js applications. Read more...

Interview with Stefan Koopmanschap - Voices of the ElePHPant

2019-07-23 11:30:53

@skoop Show Notes We Camp Skoop's blog Audio This episode is sponsored by Uncle Cal's Career Advice for Developers The post Interview with Stefan Koopmanschap appeared first on Voices of the ElePHPant.

Smooth Scrolling Image Effects

2019-07-23 11:02:03

A small set of ideas on animating images and other elements while smooth scrolling a page. Smooth Scrolling Image Effects was written by Mary Lou and published on Codrops.

How to set up Google Shopping promotion: Magento 2 & Google Merchant Center side

2019-07-23 10:49:22

Thinking about how to make your products stand out from the crowd and be more visible on Google Shopping? You are already familiar with that “special offer” link that can be added to Google Shopping listing but aren’t really sure how to set everything up to get one? Digging for some meaningful, usable and easy... The post How to set up Google Shopping promotion: Magento 2 & Google Merchant Center side appeared first on Inchoo.

A list of awesome programming talks by language

2019-07-23 09:56:50


List of programming talks

2019-07-23 09:56:50


Defining Errors Out Of Existence

2019-07-23 09:18:34

Audiocasts/Shows: This Week in Linux, Command Line Heroes, DevNation Live Introducing Kogito and Python Podcast

2019-07-23 08:52:26

Episode 75 | This Week in Linux On this episode of This Week in Linux, we’ve got a lot of Distro News with the first stable release of EndeavourOS, and we’ve also got new releases from Proxmox, deepin and FerenOS. Dropbox has decided to revert their weird decision of blocking various Linux Filesystems so we’ll talk about that. We’ve got some App News with KDE Connect now being available for macOS and a new release for the Foliate, ebook reader. Later in the show, we’ll cover some Linux Security news regarding a recently found piece of malware targeting the Linux Desktop. Then we’ll round out the show with some Linux Gaming news from Epic Games, Valve, Google Stadia and a new Humble Bundle. All that and much more on Your Weekly Source for Linux GNews! JavaScript's surprising rise from the ashes of the browser wars on Command Line Heroes The third season of the Command Line Heroes podcast continues its look at the history of the programming languages we depend on every day. Episode 3, released today, investigates the origin of JavaScript. Here's the unlikely story of how it happened. DevNation Live: Introducing Kogito DevNation Live tech talks are hosted by the Red Hat technologists who create our products. These sessions include real solutions and code and sample projects to help you get started. In this talk, you’ll learn about Quarkus, Kogito, and GraalVM from Red Hat’s Mario Fusco, Principal Software Engineer, and Burr Sutter, Chief Developer Evangelist. These days rule engines are often overlooked, possibly because people think that they are only useful inside heavyweight enterprise software products. However, this is not necessarily true. Simply put, a rule engine is just a piece of software that allows you to separate domain and business-specific constraints from the main application flow. Drools is the rule engine of Red Hat, and our goal is to make it ready to be used in serverless environments. Protecting The Future Of Python By Hunting Black Swans The Python language has seen exponential growth in popularity and usage over the past decade. This has been driven by industry trends such as the rise of data science and the continued growth of complex web applications. It is easy to think that there is no threat to the continued health of Python, its ecosystem, and its community, but there are always outside factors that may pose a threat in the long term. In this episode Russell Keith-Magee reprises his keynote from PyCon US in 2019 and shares his thoughts on potential black swan events and what we can do as engineers and as a community to guard against them. read more

JavaScript's surprising rise from the ashes of the browser wars on Command Line Heroes

2019-07-23 07:01:00

The third season of the Command Line Heroes podcast continues its look at the history of the programming languages we depend on every day. Episode 3, released today, investigates the origin of JavaScript. Here's the unlikely story of how it happened. read more

Email Signature Style 35

2019-07-23 00:22:18

The post Email Signature Style 35 appeared first on Best jQuery.

Bootstrap CSS Form Style 25

2019-07-23 00:20:35

The post Bootstrap CSS Form Style 25 appeared first on Best jQuery.

6 Best Practices to Optimize Your WordPress Database

2019-07-22 22:39:00

Your WordPress site can be slow for many different reasons; a bloated database running in the background is one of them. A professional WordPress maintenance workflow includes a regular database optimization practice during which you get rid of unnecessary data … Continue reading →

Recent WordPress Vulnerabilities Targeted by Malvertising Campaign

2019-07-22 21:02:59

The Defiant Threat Intelligence team has identified a malvertising campaign which is causing victims’ sites to display unwanted popup ads and redirect visitors to malicious destinations, including tech support scams, malicious Android APKs, and sketchy pharmaceutical ads. This type of campaign is far from novel, but these attacks drew our attention. By targeting a few ...Read More The post Recent WordPress Vulnerabilities Targeted by Malvertising Campaign appeared first on Wordfence.

NPM Upgrades Enterprise JavaScript Toolset

2019-07-22 19:58:09

NPM, a JavaScript tools provider, recently upgraded its npm Enterprise product to include new security, workflow, and other enterprise features.

GFX-RS Portability 0.7 Released With Vulkan Events, Binding Model Improvements

2019-07-22 18:32:01

The GFX-RS high performance graphics API for the Rust programming language and based on Vulkan while mapping to Metal when on Apple systems is out with a new release...

Equifax agrees to pay at least $575 million in data breach settlement

2019-07-22 18:30:57

Equifax will finally have to pay for its 2017 data breach, which compromised up to 147 million users and exposed sensitive information like credit card numbers, social security numbers, names, birthdays and addresses. The Federal Trade Commission (FTC) has revealed Equifax has agreed to pay at least $575 million as part of a global settlement … continue reading The post Equifax agrees to pay at least $575 million in data breach settlement appeared first on SD Times.

Python for Probability, Statistics, and Machine Learning (Springer)

2019-07-22 17:23:48

This book, fully updated for Python version 3.6+, covers the key ideas that link probability, statistics, and machine learning illustrated using Python modules in these areas.  Author Dr. José Unpingco develops key intuitions in machine learning by working meaningful examples using multiple analytical methods and Python codes. Detailed proofs for certain important results are also provided. <ASIN:3030185443> Read more...

3 critical aspects of API testing

2019-07-22 17:00:05

Whether you are using a mobile native, web or desktop app, integrated devices like fitness trackers, smart thermostats and virtual voice assistants; the odds are, there are millions of application programming interface (API) requests happening every second to provide the necessary services to the consumers without them even realizing it. The present world runs on … continue reading The post 3 critical aspects of API testing appeared first on SD Times.

Slack's Desktop App Now Launches 33% Faster, Uses 50% Less Memory

2019-07-22 16:43:00

Slack today announced it's deploying an under-the-hood upgrade for its desktop app to boost performance for companies and teams using the app for workplace collaboration. From a report: The latest version of Slack for desktop and internet browsers is due out in the coming weeks and promises a 33% faster launch time, 10 times faster launch of VoIP calls, and roughly 50% less memory usage. The news comes a month after Slack became a public company, listed as WORK on the New York Stock Exchange. Slack product architect and lead of desktop client rewrite Johnny Rodgers said the upgrade takes advantage of changes to Slack's underlying technology, like modern JavaScript tools and techniques and the React UI framework. Read more of this story at Slashdot.

SD Times news digest: OpenAI and Microsoft partner on AI, Adobe introduces new way to prototype voice experiences, and TypeScript 3.6 beta released

2019-07-22 15:27:37

OpenAI and Microsoft are partnering to accelerate breakthroughs in AI in Azure and help developers build the next generation of AI applications.  The companies said they are focusing on building a computational platform in Azure, which will train and run increasingly advanced AI models, including hardware technologies that build on Microsoft’s supercomputing technology. “AI is … continue reading The post SD Times news digest: OpenAI and Microsoft partner on AI, Adobe introduces new way to prototype voice experiences, and TypeScript 3.6 beta released appeared first on SD Times.

Applying C - The Pseudo File System

2019-07-22 14:26:52

The pseudo file system is mysterious - well not really. It is the place that Linux/POSIX puts everything that you can access from user mode. The confusing part is that it all pretends to be a set of directories and files even though they aren't.  This extract is from my  book on C in an IoT context. Read more...

State of AI 2019 Report

2019-07-22 13:52:05

An insightful report  on the future of AI has recently been published on SlideShare. It consists of 130 slides covering the most important machine learning research, industry and political developments over the past 12 months and includes a new section on China and here we look at its most important points. Read more...

Collective #534

2019-07-22 13:37:19

Gradient Magic * Locomotive Scroll * Stein * Gatsby Themes * ImportDoc * TabNine * Sidelist Collective #534 was written by Pedro Botelho and published on Codrops.

Getting Started With Kubernetes Clusters

2019-07-22 13:37:03

Kubernetes is rapidly turning into the new standard for sending and overseeing programming in the cloud. With all the power Kubernetes gives, be that as it may, comes a precarious expectation to absorb information. As a newcomer, attempting to parse the official documentation can be overpowering. There is a wide range of pieces that make up the framework. It tends to be difficult to tell which ones are important for your utilization case. This blog entry will give a disentangled perspective on Kubernetes, however, it will endeavor to give an abnormal state outline of the most significant segments and how they fit together. Equipment Node A node is the smallest unit of registering equipment in Kubernetes. It is a portrayal of a solitary machine in your cluster. In most creation frameworks, a node will probably be either a physical machine in a data center or virtual machine facilitated on cloud supplier like Google Cloud Platform. Try not to give shows a chance to restrict you, in any case; in principle, you can make a node out of nearly anything.

Faster XML stream processing in Go

2019-07-22 12:37:00

XML processing was all the rage 15 years ago; while it's less prominent these days, it's still an important task in some application domains. In this post I'm going to compare the speed of stream-processing huge XML files in Go, Python and C and finish up with a new, minimal …

Self Programming Language

2019-07-22 09:54:51


Top 5 Page Inspection Tools Built into Browsers

2019-07-22 09:02:00

Many web development tools are now integrated directly into browsers and have multiple functions. These tools make your life a lot easier and help you in inspecting and analyzing possible issues with the CSS, HTML, and JavaScript used in the code. Octavia Anghel explores the top five browser inspection tools.

Dividing responsibilities - Part 2 - Matthias Noback

2019-07-22 08:20:00

This is another excerpt from my latest book, which is currently part of Manning's Early Access Program. Take 37% off Object Design Style Guide by entering fccnoback into the discount code box at checkout at manning.com. Make sure to read part 1 first. Create read models directly from their data source Instead of creating a StockReport model from PurchaseOrderForStock objects, we could go directly to the source of the data, that is, the database where the application stores its purchase orders. If this is a relational database, there might be a table called purchase_orders, with columns for purchase_order_id, product_id, ordered_quantity, and was_received. If that's the case, then StockReportRepository wouldn't have to load any other object before it could build a StockReport object; it could make a single SQL query and use it to create the StockReport, as shown in Listing 11). Listing 11. StockReportSqlRepository creates a stock report using plain SQL. final class StockReportSqlRepository implements StockReportRepository { public function getStockReport(): StockReport { result = this.connection.execute( 'SELECT ' . ' product_id, ' . ' SUM(ordered_quantity) as quantity_in_stock ' . 'FROM purchase_orders ' . 'WHERE was_received = 1 ' . 'GROUP BY product_id' ); data = result.fetchAll(); return new StockReport(data); } } Creating read models directly from the write model's data source is usually pretty efficient in terms of runtime performance. It's also an efficient solution in terms of development and maintenance costs. This solution will be less efficient if the write model changes often, or if the raw data can't easily be used as-is, because it needs to be interpreted first. Build read models from domain events One disadvantage of creating the StockReport read model directly from the write model's data is that the application will make the calculations again and again, every time the user requests a stock report. Although the SQL query won't take too long to execute (until the table grows very large), in some cases it'll be necessary to use another approach for creating read models. First, let's take another look at the result of the SQL query we used in the previous example (Table 1). Table 1. The result of the SQL query for generating a stock report. product_id quantity_in_stock 123 10 124 5 What would be another way in which we can come up with the numbers in the second column, that wouldn't involve looking up all the records in the purchase_orders table and summing their ordered_quantity values? What if we could sit next to the user with a piece of paper, and whenever they mark a purchase order as "received", we'd write down the ID of the product and how many items of it were received. The resulting list would look like Table 2: Table 2. The result if we write down every received product. product_id received 123 2 124 4 124 1 123 8 Now, instead of having multiple rows for the same product, we could also look up the row with the product that was just received, and add the quantity we received to the number that's already in the received column, as is done in Table 3. Table 3. The result of combining received quantities per product. product_id receivedTruncated by Planet PHP, read more at the original (another 8930 bytes)

NativeScript 6 Goes Webpack All The Way

2019-07-22 07:25:52

NativeScript 6.0 has been released with more support for Webpack and faster delivery of patches. Read more...

Object-Oriented Programming – The Trillion Dollar Disaster

2019-07-22 05:48:41


Is Object-Oriented Programming a Trillion Dollar Disaster?

2019-07-22 05:04:00

Senior full-stack engineer Ilya Suzdalnitski recently published a lively 6,000-word essay calling object-oriented programming "a trillion dollar disaster." Precious time and brainpower are being spent thinking about "abstractions" and "design patterns" instead of solving real-world problems... Object-Oriented Programming (OOP) has been created with one goal in mind -- to manage the complexity of procedural codebases. In other words, it was supposed to improve code organization. There's no objective and open evidence that OOP is better than plain procedural programming... Instead of reducing complexity, it encourages promiscuous sharing of mutable state and introduces additional complexity with its numerous design patterns. OOP makes common development practices, like refactoring and testing, needlessly hard... Using OOP is seemingly innocent in the short-term, especially on greenfield projects. But what are the long-term consequences of using OOP? OOP is a time bomb, set to explode sometime in the future when the codebase gets big enough. Projects get delayed, deadlines get missed, developers get burned-out, adding in new features becomes next to impossible. The organization labels the codebase as the "legacy codebase", and the development team plans a rewrite.... OOP provides developers too many tools and choices, without imposing the right kinds of limitations. Even though OOP promises to address modularity and improve reusability, it fails to deliver on its promises... I'm not criticizing Alan Kay's OOP -- he is a genius. I wish OOP was implemented the way he designed it. I'm criticizing the modern Java/C# approach to OOP... I think that it is plain wrong that OOP is considered the de-facto standard for code organization by many people, including those in very senior technical positions. It is also wrong that many mainstream languages don't offer any other alternatives to code organization other than OOP. The essay ultimately blames Java for the popularity of OOP, citing Alan Kay's comment that Java "is the most distressing thing to happen to computing since MS-DOS." It also quotes Linus Torvalds's observation that "limiting your project to C means that people don't screw things up with any idiotic 'object model'." And it ultimately suggests Functional Programming as a superior alternative, making the following assertions about OOP: "OOP code encourages the use of shared mutable state, which has been proven to be unsafe time and time again... [E]ncapsulation, in fact, is glorified global state.""OOP typically requires a lot of boilerplate code (low signal-to-noise ratio).""Some might disagree, but OOP code is notoriously difficult to unit test... [R]efactoring OOP code is really hard without dedicated tools like Resharper.""It is impossible to write good and maintainable Object-Oriented code." Read more of this story at Slashdot.

Pure JavaScript WiFi QR Code Generator

2019-07-22 01:11:59


Bootstrap Vertical Tab 41

2019-07-22 00:22:37

The post Bootstrap Vertical Tab 41 appeared first on Best jQuery.

Service Box 124

2019-07-22 00:20:05

The post Service Box 124 appeared first on Best jQuery.

ES proposal: private methods and accessors in JavaScript classes

2019-07-22 00:00:00

Class fields are about creating properties and similar constructs directly inside the bodies of classes. This blog post is part of a series on them: Public class fields Private class fields Private methods and getter/setters for JavaScript classes This series replaces 2ality’s prior blog post on fields. In this blog post, we look at private methods and private accessors (getters and setters) for JavaScript classes. They are a new kind of class member that can’t be accessed outside the body of their class. To understand this post, you should be familiar with private class fields. This feature is the subject of the ECMAScript proposal “Private methods and getter/setters for JavaScript classes” by Daniel Ehrenberg. [Read rest of post]

6.6 Million Lose CBS Channels After 'Business Dispute' With AT&T

2019-07-21 23:58:00

"Media giants are embroiled in yet another fight over TV rates, and viewers are once again paying the price," writes Engadget. CBS' channels in 17 markets (including New York, San Francisco and Atlanta) have gone dark on AT&T services like DirecTV Now and U-verse after the two companies failed to reach an agreement on a new carriage contract before the old one expired at 2AM ET on July 19th. As is often the case in disputes like this, the two sides are each accusing each other of being unreasonable -- though AT&T in particular has also claimed that CBS is using All Access as a weapon. CNET notes that the dispute also affects 100 CBS stations and affiliates on Direct Now, citing reports that it ultimately impacts a total of 6.6 million TV viewers in the U.S. "A business dispute took CBS off the air for millions of satellite television customers of DirecTV and AT&T U-verse on Saturday," according to a news report (from CBS): CBS said that while it didn't want its customers caught in the middle, it is determined to fight for fair value... AT&T countered in a statement provided to Variety that CBS is "a repeat blackout offender" that has pulled its programming from other carriers before in order to get its way. "Isn't this the sort of thing they enemies of net neutrality assured us would never happen?" writes long-time Slashdot reader shanen. "Or is it just a plot to sell VPN services?" Read more of this story at Slashdot.

The Legion Parallel Programming System

2019-07-21 21:39:35


10 Top Entertainment APIs

2019-07-21 17:12:52

Movies, sports, TV, music, events, games, and pets are just a few options humans can turn to in order to keep themselves entertained. And they all have something in common: they all have factions of a vast online presence that is accessible by Application Programming Interfaces, or APIs.

HTML Parser – Flat HTML to Pug, Jinja2 and Blade Templates

2019-07-21 15:54:29


Alan Turing On £50 Note

2019-07-21 14:36:26

The next £50 bank note, the highest denomination issued by the Bank of England, honors Alan Turing. This news prompted The Times to write a new obituary for "this enigmatic genius". Read more...

Programming: Ruby, NativeScript, Python, Rust/C/C++ FUD From Microsoft

2019-07-21 13:20:40

Tidelift and Ruby Together collaborate to support critical open source infrastructure via the Tidelift Subscription Tidelift and Ruby Together today announced a collaboration to support essential open source infrastructure projects maintained by the non-profit Ruby community initiative. Tidelift now provides recurring income to Ruby Together to pay the maintainers of vital projects, enabling them to manage the projects to standards that support the work of enterprise software development teams. In addition, Tidelift's managed open source subscription customers will receive maintenance, security, and licensing assurances for key projects supported by Ruby Together. Open Source NativeScript 6.0 Released for JavaScript-Based iOS, Android Development ActiveState Offers Extended Support for Python 2 Beyond EOL Community support for Python 2 will expire on Jan. 1, 2020. After that date, the Python core team and many third-party package authors will no longer be supporting, maintaining or updating any of their Python 2.x releases. Organizations with Python 2 deployments are faced with a key decision: whether to rewrite, migrate or maintain their existing applications. No matter which option they choose, the safety net of a commercial support provider can help reduce risk and save developer time. Weekly Python StackOverflow Report: (clxxxvii) stackoverflow python report Rust in peace: Memory bugs in C and C++ code cause security issues so Microsoft is considering alternatives once again [Ed: Microsoft Tim is badmouthing alternatives to the One Microsoft Way to serve Microsoft] Microsoft Security Response Center (MSRC) is waxing lyrical about the risks inherent in C and C++ coding, arguing it may be time to dump "unsafe legacy languages" and shift to more modern, safer ones. The Redmond-based biz has long been a C++ shop when it comes to the programming that matters most to the company – the Windows operating system and the core Office applications, for example. Complete Guide to Date and Time Functions The first PyCon Africa In just a few weeks, from the 6th to 10th of August, the first ever pan-African PyCon will take place in Accra, Ghana. PyCon Africa 2019 is an amazing step for the rapidly growing Python community in Africa. read more

A Modern Romance? AI in the Age of Emancipation

2019-07-21 13:09:42

Google Abandons Go's try() Function Proposal, Citing 'Overwhelming' Community Response

2019-07-21 11:34:00

Google's Go programming language will not add a try() function in its next major version, "despite this being a major part of what was proposed," reports the Register: Error handling in Go is currently based on using if statements to compare a returned error value to nil. If it is nil, no error occurred. This requires developers to write a lot of if statements. "In general Go programs have too much code-checking errors and not enough code handling them," wrote Google principal engineer Russ Cox in an overview of the error-handling problem in Go. There was therefore a proposal to add a built-in try function which lets you eliminate many of the if statements and triggers a return from a function if an error is detected. The proposal was not for full exception handling, which is already present in Go via the panic and recover functions. That proposal has now been abandoned. Robert Griesemer, one of the original designers of Go, announced the decision in a post Tuesday... "Based on the overwhelming community response and extensive discussion here, we are marking this proposal declined ahead of schedule. As far as technical feedback, this discussion has helpfully identified some important considerations we missed, most notably the implications for adding debugging prints and analyzing code coverage. "More importantly, we have heard clearly the many people who argued that this proposal was not targeting a worthwhile problem. We still believe that error handling in Go is not perfect and can be meaningfully improved, but it is clear that we as a community need to talk more about what specific aspects of error handling are problems that we should address." Read more of this story at Slashdot.

Go Abandons try() Function Proposal, Citing 'Overwhelming' Community Response

2019-07-21 11:34:00

Google's Go programming language will not add a try() function in its next major version, "despite this being a major part of what was proposed," reports the Register: Error handling in Go is currently based on using if statements to compare a returned error value to nil. If it is nil, no error occurred. This requires developers to write a lot of if statements. "In general Go programs have too much code-checking errors and not enough code handling them," wrote Google principal engineer Russ Cox in an overview of the error-handling problem in Go. There was therefore a proposal to add a built-in try function which lets you eliminate many of the if statements and triggers a return from a function if an error is detected. The proposal was not for full exception handling, which is already present in Go via the panic and recover functions. That proposal has now been abandoned. Robert Griesemer, one of the original designers of Go, announced the decision in a post Tuesday... "Based on the overwhelming community response and extensive discussion here, we are marking this proposal declined ahead of schedule. As far as technical feedback, this discussion has helpfully identified some important considerations we missed, most notably the implications for adding debugging prints and analyzing code coverage. "More importantly, we have heard clearly the many people who argued that this proposal was not targeting a worthwhile problem. We still believe that error handling in Go is not perfect and can be meaningfully improved, but it is clear that we as a community need to talk more about what specific aspects of error handling are problems that we should address." Read more of this story at Slashdot.

MacOS Red Teaming 206: ARD (Apple Remote Desktop Protocol)

2019-07-21 06:47:01

Daily API RoundUp: Pureport, Clyde, Prime Trust, Trint, Fabman

2019-07-20 22:50:52

Every day, the ProgrammableWeb team is busy, updating its three primary directories for APIs, clients (language-specific libraries or SDKs for consuming or providing APIs), and source code samples.

Frequency responses of half-pel filters

2019-07-20 21:58:12

In the previous post, I looked at repeated application of FIR filters on the same signal and laid out why their frequency response is the thing to look at if we’re wondering about their long-term stability under repeated application, because the Discrete-Time Fourier Transform (DTFT) of the filter coefficients corresponds to the eigenvalues of the […]

Show HN: A Clojure implementation of logic programming language in SICP

2019-07-20 20:22:29


Interview with Gary Hockin - Voices of the ElePHPant

2019-07-20 19:32:46

How to Install and Configure OpenLiteSpeed Web Server on Debian 10

2019-07-20 17:58:21

OpenLiteSpeed is a free, open-source and lightweight HTTP server developed by LiteSpeed Technologies. In this tutorial, we will show you how to install OpenLiteSpeed with MariaDB and PHP on Debian 10 server.

Hashing names does not protect privacy

2019-07-20 16:43:03

Secure hash functions are practically impossible to reverse, but only if the input is unrestricted. If you generate 256 random bits and apply a secure 256-bit hash algorithm, an attacker wanting to recover your input can’t do much better than brute force, hashing 256-bit strings hoping to find one that matches your hash value. Even […]

Python 3.8 Will Finally Include the Walrus Operator

2019-07-20 15:34:00

An anonymous reader quotes LWN: Python 3.8 is feature complete at this point, which makes it a good time to see what will be part of it when the final release is made. That is currently scheduled for October, so users don't have that long to wait to start using those new features. The headline feature for Python 3.8 is also its most contentious. The process for deciding on Python Enhancement Proposal (PEP) 572 ("Assignment Expressions") was a rather bumpy ride that eventually resulted in a new governance model for the language. That model meant that a new steering council would replace longtime benevolent dictator for life (BDFL) Guido van Rossum for decision-making, after Van Rossum stepped down in part due to the "PEP 572 mess". Out of that came a new operator, however, that is often called the "walrus operator" due to its visual appearance. Using ":=" in an if or while statement allows assigning a value to a variable while testing it... It is a feature that many other languages have, but Python has, of course, gone without it for nearly 30 years at this point. In the end, it is actually a fairly small change for all of the uproar it caused. Read more of this story at Slashdot.

Moonlight Tribute To Margaret Hamilton's Apollo Code

2019-07-20 13:42:03

This week marks the 50th anniversary of Apollo 11 moon landing and we have all been experiencing (again) watching Neil Armstrong and Buzz Aldrin setting foot on the moon. Google not only provided us a Google Doodle, it also produced a massive portrait of Margaret Hamilton, in moonlight, to mark her role in landing mankind on the moon. Read more...

Databases adopt open licenses, JavaScript gets faster on Android, governments use more OSS, and more news

2019-07-20 07:04:00

In this edition of our open source news roundup, we take a look at database vendors going all in with open source, Facebook and Uber's latest open source releases, City of London's homebuilding app, and more! read more

Preloader Style 237

2019-07-20 00:22:22

The post Preloader Style 237 appeared first on Best jQuery.

Range Slider Style 39

2019-07-20 00:20:37

The post Range Slider Style 39 appeared first on Best jQuery.

Skipping PHP.CE this year - larry@garfieldtech.com

2019-07-20 00:01:26

Skipping PHP.CE this year Being a conference organizer is hard. Like, seriously. Aside from the obvious logistics, and the not-at-all-obvious logistics, you're in a position to create a social gathering, not just a technical one. That comes with a lot of baggage and challenges, many of them often competing and incompatible, that need to be balanced. One in particular is ensuring that the speakers are an eclectic lot that are representative both of the community as it is and as you want it to be. That can take a lot of work. Earlier this year the organizers of the PHP Central Europe conference (PHP.CE) approached me and asked me to submit sessions for the PHP.CE conference in Dresden this October. I rather enjoy speaking at conferences so I of course did so, and this past week they announced their speaker selections, including me with 2 sessions. Unfortunately, some fellow speakers pointed out that their speaker selections for this year included zero women. There were numerous speakers with 2 sessions (myself included) or a workshop and a session, but no women at all. Continue reading this post on SteemIt. Larry 19 July 2019 - 7:01pm Read more about Skipping PHP.CE this year

JSON Parsing and benchmarking in Go

2019-07-19 22:22:53

Hello programmers,Continue reading on codeburst »

Progress releases Web Accessibility Guidebook for developers

2019-07-19 21:09:22

There are a number of things developers have to consider when developing for the web, but one thing that may not get enough attention is the accessibility of their application. The notion of web accessibility is not new, with the World Wide Web Consortium (W3C) publishing the first Web Content Accessibility Guidelines in 1999, but … continue reading The post Progress releases Web Accessibility Guidebook for developers appeared first on SD Times.

For Netflix Engineers, GraphQL Wins Over REST and Falcor

2019-07-19 18:49:43

The Apollo GraphQL language received a major upvote from Netflix, reports TechTarget’s SearchMicroservices news writer Darryl K. Taft.

Podcast Episode 31: Securing Sensitive Data in the Cloud with Chris Teitzel

2019-07-19 18:28:18

 At WordCamp Europe, Mark chats with Chris Teitzel, CEO and founder of Lockr. Lockr is a key management system for websites using CMSs like WordPress and Drupal. Chris talks about the challenges of securing sensitive information and how Lockr makes secure key management affordable. Chris speaks on security topics at WordCamps and DrupalCons around ...Read More The post Podcast Episode 31: Securing Sensitive Data in the Cloud with Chris Teitzel appeared first on Wordfence.

Analyzing Social Media Networks with NodeXL 2nd Ed (Morgan Kaufmann)

2019-07-19 18:14:03

Subtitled Insights from a Connected World, this book provides readers with a thorough, practical and updated guide to NodeXL, the open-source social network analysis (SNA) plug-in for use with Excel. Authors Derek L. Hansen, Ben Shneiderman, Marc Smith and Dr. Itai Himelboim analyze social media, provide a NodeXL tutorial, and present network analysis case studies, all of which are revised to reflect the latest developments. <ASIN:012817756X> Read more...

Malware in PyPI Code Shows Supply Chain Risks

2019-07-19 17:30:00

A code backdoor in a package on the Python Package Index demonstrates the importance of verifying code brought in from code repositories.

Grab a .DEV Domain from Hover! (Sponsored)

2019-07-19 17:12:09

I can say that the biggest and best changes in my professional life came from starting this blog — it was the springboard for conference speaking, open source, and joining Mozilla. I’ve always urged ever developer to have a blog to showcase talent, explore new technology, and to network. What’s the first step in getting […] The post Grab a .DEV Domain from Hover! (Sponsored) appeared first on David Walsh Blog.

Hasura's Guide to GraphQL

2019-07-19 16:59:52

Hausura has provided a mini course on the basics of GraphQL which will be of interest to anyone who want to get to grips with the open source Graph QL engine. Read more...

Facebook Releases Hermes JavaScript Engine

2019-07-19 16:45:56

Facebook has released Hermes, a JavaScript engine designed to make native Android apps built using the React Native network load faster. Hermes, which has been open sourced under a MIT license,  is described as featuring ahead-of-time static optimization and compact bytecode. Read more...

Programming Leftovers: Python, Go, LLVM and More

2019-07-19 16:26:41

Python List Sorting with sorted() and sort() In this article, we'll examine multiple ways to sort lists in Python. Python ships with two built-in methods for sorting lists and other iterable objects. The method chosen for a particular use-case often depends on whether we want to sort a list in-place or return a new version of the sorted list. ExpressPython: Lightweight, portable Python editor for small scripts There are many IDEs for Python, and it’s time for one more. ExpressPython is a lightweight, small code editor for Python 3. Originally built to help teach students how to code, it can be used in programming competitions, or just when you need a fast, small, clean code editor. There are a wide variety of Python IDEs and code editors available for programmers. Between PyCharm, VS Code, IDLE, Spyder, just to name a few, programmers have many to choose from depending on their needs and preferences. Add one more editor to the fray. ExpressPython is a small, lightweight Python 3 editor that can help with learning and competitive programming, such as coding challenges. Its creator started work on it in 2014 in order to fulfill a few needs, such as the ability to work offline. It is not made with the intent of becoming a fully-featured IDE, and does not include debugging features. However, it does have a few noteworthy features, so let’s take a look. Google's Go team decides not to give it a try The Go language will not be adding a "try" keyword in the next major version, despite this being a major part of what was proposed for version 1.14. Go, an open source language developed by Google, features static typing and native code compilation. It is around the 15th most popular language according to the Redmonk rankings. Error handling in Go is currently based on using if statements to compare a returned error value to nil. If it is nil, no error occurred. This requires developers to write a lot of if statements. "In general Go programs have too much code-checking errors and not enough code handling them," wrote Google principal engineer Russ Cox in an overview of the error-handling problem in Go. LLVM 9.0 Feature Work Is Over While LLVM 10.0 Enters Development Feature work is over on LLVM 9.0 as the next release for this widely-used compiler stack ranging from the AMDGPU shader compiler back-end to the many CPU targets and other innovative use-cases for this open-source compiler infrastructure. Ongoing LLVM release manager Hans Wennborg branched the LLVM 9.0 code-base this morning while in turn opening LLVM 10.0 development on trunk/master. This also marks the 9.0 branching for all LLVM sub-projects. Mu at EuroPython Mu made a number of appearances at last week’s wonderful EuroPython 2019 conference in Basel, Switzerland. PyCharm 2019.2 Release Candidate PyCharm 2019.2 is almost ready to be released, and we’re happy to announce that a release candidate is available for download now. read more

Audiocasts/Shows: Ubuntu Podcast, Python Podcasts, User Error

2019-07-19 16:10:01

Ubuntu Podcast: S12E15 – Diablo This week we’ve been buying a new phone and playing with QEMU. We discuss the release fo Debian 10, Ubuntu users saying “Thank you”, Nvidia drivers, WSL and Ubuntu MATE for the GPD MicroPC. We also round up some events and tech news. It’s Season 12 Episode 15 of the Ubuntu Podcast! Mark Johnson, Martin Wimpress and Stuart Langridge are connected and speaking to your brain. Episode #139: f"Yes!" for the f-strings Episode #221: Empowering developers by embedding Python How do we get kids excited about programming? Make programming tangible with embedded devices. Did you know that after kids learned to code with the BBC micro:bit, 90% of kids "thought coding was for everyone" and 86% said it made CS topics more interesting? Old and Insecure | User Error 70 Whether Linux is inherently secure, the next phase of online interaction, and wasting our free time. Plus where to focus your contributions, and a tricky hypothetical question. read more

murze.be: ★ Implementing event sourcing: testing aggregates

2019-07-19 16:00:01

Earlier this year we released v2 of laravel-event-sourcing. This package is probably the easiest way to getting started with event sourcing in Laravel. A significant feature of v2 was the addition of aggregates. Today we released another new version of the package that adds test methods. These met...

Working remotely is the new norm for developers

2019-07-19 15:58:41

Developers have come to expect a flexible work schedule when it comes to their career. In a new report, 86 percent of respondents revealed they currently work remotely in some capacity. Thirty-three percent work from home full time while 28 percent split their time between working remotely and going into the office. The report comes … continue reading The post Working remotely is the new norm for developers appeared first on SD Times.

Google releases JavaScript SEO developer guide

2019-07-19 15:58:00


Understand the JavaScript SEO basics

2019-07-19 15:58:00


NativeScript 6.0 Release Focuses on Developer Productivity

2019-07-19 15:01:57

NativeScript 6.0 is now available. The open-source framework for building cross-platform native Web and mobile applications specifically focused on developer productivity with the 6.0 release. Examples of increased developer productivity include faster patch delivery, additional out of the box functionality, additional pre-built scenarios that avoid custom development, and specific tools driving the development experience.

SD Times news digest: Kotlin awarded Breakout Project of the Year at OSCON, Embarcadero RAD Studio 10.3.2, and Camunda workflow engine for microservices

2019-07-19 14:36:43

Kotlin was awarded the Open-Source Award for Breakout Project of the Year at the O’Reilly Open Source Software Conference (OSCON) this week. RELATED CONTENT: The rise of Kotlin “There is no doubt to us why Kotlin received this award: it’s a fast moving (but thoughtfully developed) programming language that lets you write better code, faster,” … continue reading The post SD Times news digest: Kotlin awarded Breakout Project of the Year at OSCON, Embarcadero RAD Studio 10.3.2, and Camunda workflow engine for microservices appeared first on SD Times.

Derick Rethans: PHP Internals News: Episode 19: Deprecate curly brace syntax

2019-07-19 13:30:01

PHP Internals News: Episode 19: Deprecate curly brace syntax London, UK Thursday, July 18th 2019, 09:19 BST In this episode of "PHP Internals News" I chat with Theodore Brown (Twitter, Website, GitHub) about the "Deprecate curly brace synta...

Importance of Content Management System

2019-07-19 13:06:28

A content management system (CMS) is software that enables end-users to create and manage content on a website. They are designed to make content management easy for non-technical users. One of the key features of a good content management system is that no coding is needed to create or modify content. CMS handles all the basic coding, so users can concentrate on what visitors to the website will see, rather than what goes on behind the scenes. A content management system consists of two main elements. First, there is the content management application (CMA). The CMA is the part of the application that allows users to add content and manage it. The second element is a content delivery application (CDA). This is the backend application that formats the content and makes it available to visitors to the site.

Creating Virtual Environments With Pyenv

2019-07-19 13:05:09

rst2pdf is a Python 2 application that we’re making compatible with Python 3. When developing Python applications, I’ve found it useful to be able to switch python versions easily and also set up clean environments to work in. To do this, I currently use pyenv. Install Pyenv On my Mac, I install pyenv & its sister project pyenv-virtualenv with Homebrew:

Site News: Popular Posts for This Week (07.19.2019)

2019-07-19 13:05:01

Popular posts from PHPDeveloper.org for the past week:stitcher.io: Preloading in PHP 7.4 Simon Kollross: Installing Imagick for PHP using Homebrew PHP Podcasts: PHP Internals News: Episode 18: Strict Operator Directive PHP Town Hall: Episode 67: Zend Framework 3.Laminas TomᚠVotruba Blog: Why use One-Time Migration Scripts symfony Project Blog: SymfonyCloud: from Early Access to General Availability PHP: Hypertext Preprocessor: PHP 7.4.0 alpha 3 Released Jason McCreary: Lowering the time cost of testing existing Laravel applications Webslesson: How to Implement Date Range Filter in Laravel 5.8 Datatable Simon Kollross: Logging a Forge server to Papertrail with encryption in transit murze.be: ★ How to add webmentions to a Laravel powered blog

Bosque: Microsoft’s New Programming Language

2019-07-19 13:04:50

Bosque is described as a programming language that is “simple, obvious, and easy to reason about for both humans and machines.” As a supporter of technology that is “simple”, “obvious” and “easy”, I was interested to see what this meant to a programming language. To find out more about Microsoft’s new research programming language and the problems it is trying to solve, I spoke with its creator, Mark Marron (@mrkmarron) of Microsoft Research.

Web Components as Technology

2019-07-19 13:04:35

With front-end development getting an upper edge in the breakneck pace of the Web world, it has become an important priority for UI frameworks to set a common pattern to share. The latest UI frameworks like Angular, Vue and React work on similar lines but create an ecosystem, which could become a problem when the component is required to be used by any other framework. Web components are breaking this trend as they are “the set of API’s of features providing a standard component model for the web by allowing encapsulation and interoperability of individual HTML elements”. They deliver high-quality user experience with no framework or their building steps.

SD Times Open-Source Project of the Week: YugaByte DB

2019-07-19 13:00:34

This week’s SD Times Open Source Project of the Week is the newly open-sourced YugaByte DB, which allows users to better collaborate on the distributed SQL database.  The move to the open-source core project distributed under the Apache 2.0 license makes previously closed-sourced features such as distributed backups, data encryption and read replicas more accessible, … continue reading The post SD Times Open-Source Project of the Week: YugaByte DB appeared first on SD Times.

∂P: A Differentiable Programming System to Bridge ML and Scientific Computing

2019-07-19 11:58:43


A Differentiable Programming System to Bridge ML and Scientific Computing

2019-07-19 11:58:43


Setup VS Code for Efficient PHP Development

2019-07-19 11:44:47


Powered by Plasma: ALBA Synchrotron in Barcelona, Spain

2019-07-19 08:57:19

As you go about your daily tasks, you’re probably unaware that Plasma runs on the computers in one of Europe’s largest research facilities. We were also oblivious – until we met Sergi Blanch-Torné at FOSDEM 2019. We’re always looking for interesting stories from people who use KDE software at their workplace, in school, or in government institutions. You can imagine our delight, then, when we met Sergi Blanch-Torné at this year’s FOSDEM. Sergi is a Controls Software Engineer at ALBA, a KDE user, and a Free software advocate and contributor. Not only was he willing to tell us about his favorite KDE apps, but he also works at one of the most amazing places on Earth! In this interview, he tells us what it’s like to work at ALBA, and answers the burning question: “what even is a synchrotron?”. ALBA is a third-generation synchrotron radiation facility in the Barcelona Synchrotron Park, in Cerdanyola del Vallès, Spain. Managed by the Consortium for the Construction, Equipping and Exploitation of the Synchrotron Light Source (CELLS), it is jointly funded by the Spanish and the Catalonian Administration. Aerial view of the ALBA facility. Source: CELLS media gallery. With its eight operational beamlines (and additional four in construction), ALBA has been serving more than 2000 researchers every year since first opening for experiments in 2010. It comprises a complex of electron accelerators that produce synchrotron light – electromagnetic radiation covering a continuum of wavelengths, ranging from infrared to hard X rays (including visible light). Synchrotron light is millions of times brighter than the surface of the Sun, which allows scientists to visualize atomic structures in extremely high resolutions. ALBA also happens to be the place where Plasma powers the majority of desktop computers in the controls department. Read more on this, plus a bunch of fascinating details on how synchrotrons work, in our interview with Sergi. Ivana Devcic: Sergi, thank you for accepting our invitation to the interview, and for taking the time out of your day to do this! Our story begins at this year's FOSDEM, where you met with developers from the KDE community, is that right? Sergi Blanch-Torné: That's right. I'm pretty much a regular at FOSDEM at this point. I think I attended it for the first time in 2004. One day at work, we had some trouble with Plasma. Conveniently, it was a few weeks before FOSDEM. I told my boss that there will surely be KDE people to ask for help, and there really were! And it was fun to find out they are from Catalonia too. So we arranged a visit with Aleix Pol and Albert Astals. They looked at the issue and found the right configuration that solved it. Ivana: Glad to hear you solved the issue! It would make for an awkward start to our interview otherwise. Could you please introduce yourself a bit to our readers? Sergi: Of course. I'm from Juneda, a small village in the west of Catalonia. Just 20 km away from the province capital Lleida. An hour and a half from the capital, Barcelona. I studied computer science at the University of Lleida. It was there that I started using KDE software, back in 1998. They are Linux evangelists at my university, and KDE's desktop environment was (and still is) the default desktop on the computers running Linux. I still contribute to my university with a yearly talk on how a computer scientist can end up in a weirder job than expected. After getting my Bachelor's degree, I went to an Erasmus project to the Vrije Universiteit in Amsterdam, Netherlands. That's where I improved my English a lot. When I came back from Erasmus, I tried moving to another country, but ended up in Barcelona. The final project for my Bachelor's degree was related to Free software. I've had a great relationship with the Mathematics department, and there is a research group that works on cryptography. We thought of doing something practical that could be used by the Free Software community. At the time, the elliptic curve crypto wasn't really known to the general public, so we decided to prepare an implementation for GnuPG. I still maintain the website of our project. Sadly, I don't have the time to contribute with code any more, but I like to be in contact with the community. That's why every year at FOSDEM, we meet with Werner Koch, the project leader of GnuPG. Ivana: You've been involved with Free Software for quite a while. How did this lead to working at ALBA? Sergi: When I was looking for a job abroad after returning from Erasmus, I heard about the ESRF (European Synchrotron Radiation Facility), the biggest synchrotron in Europe. I applied for a position there, and in one of the interviews in the hiring process they told me that a synchrotron was in construction near Barcelona. So I also applied there. Many of my current supervisors at ALBA were working at ESRF before. General view inside the facility. Photo by Sergi Blanch-Torné. Here at ALBA, I got a position in the controls section. We're part of the computing division that has different sections. One is called the Management Information System. That's where engineers who work mainly with the web and administrative applications. Then there are the people from infrastructure systems. And the sections for electronics and controls, that we have a lot in common with. Ivana: The controls section... Sounds exciting. But what exactly do you control from there? Sergi: To help you understand how it all works, maybe I should abstract first what a synchrotron is. A synchrotron is a kind of particle accelerator. In our case, it is an electron accelerator. You've probably heard about the LHC in CERN -- that's a collider, a very different facility, but also an accelerator. The difference is in the scale and in the purpose. At the LHC they have 27 kilometers in the circumference perimeter. We have about 400 meters. Colliders are made to produce those collisions we read about in the press, for discovering particles like the Higgs Boson. When those electrons in the accelerator are bent to maintain the circumference, they produce photons - basically, they generate light. In the LHC or other colliders, they like to set this light generation to the minimum. But in the synchrotrons, it is the light that is actually used. We could say that the accelerator itself is a bulb that generates an incredibly brilliant light. And it is because of this brilliance that those facilities are used, instead of other alternatives such as X-rays. There are experiments that require this kind of facility, because with a normal X-ray generator researchers would not be able to see what the experiment requires. In essence, you could also say that this is a big machine we use to see small things. We could even simplify it to the point of saying a synchrotron is like a huge microscope. It has applications in biology, chemistry, pharmacology... also in paleontology, or even art. Here at ALBA we did experiments on how a virus passes the membrane of a cell. We looked at the mechanisms of how the cell is invaded, and took pictures of that. We can also take a fossil and see inside - without having to crack it open and break it, we are able to see the remaining structure inside. Or we can stress a plastic to know how it will degrade under certain conditions. Sometimes famous artists used layers of paint to draw over something. We can see what's under the paint without destroying the layers. Beamline 24 end station, where the experiments happen. Photo by Sergi Blanch-Torné. Ivana: Fascinating! Sergi: It really is. And my job is to have the instruments under control and integrated to allow an experiment to be carried out. We provide the researchers with the tools they need, but we are rarely there when they're using the synchrotron. To have make sure an accelerator work correctly, many elements need to work together seamlessly. The electron beam is like, say, a train with its carriages. There is not a single electron, but a bunch revolving around in a circle. They are packed in bunches, and those bunches are separated from each other by 2 nanoseconds. So an extremely high level of precision is needed. First, there is a linear accelerator, with an electron gun that generates those bunches of electrons. We call it linac for short. This linac produces electron beams that travel at speeds close to the speed of light. Then they are passed through a booster ring, where they are accelerated even more. Even closer to the speed of light, but never reaching its physical bound. This acceleration process is repeated 3 times per second, and the beam is stored in a ring that is designed to generate this extremely brilliant light. For this whole process, there are hundreds or even thousands of elements to control. They have to work together, they have to be prepared to act just in that one precise moment. There are stepper motors, encoders, detectors, cameras, oscilloscopes, and even other weirder elements that need to work together. And we make sure they work properly. Ivana: Do you use any specialized software in your work? Sergi: Currently, the control room is running Debian 9 with Plasma. Almost everything in the controls section runs Linux. There are a few computers that require Windows because some manufacturers didn't provide the drivers for Linux... Computers in the control room, powered by Plasma. Photo by Sergi Blanch-Torné. As for the tools we use, the ESRF has been publishing the controls system as Free Software for decades now. There is a community of synchrotrons in Europe and many institutions and research facilities participate in this community. It's all about collaboration of several institutions and engineers like me in other facilities. In a way, it's exactly like in FOSS communities: we work on solving something that others can benefit from, and vice versa. To be more specific in terms of software, the distributed control system we use is called Tango. Ivana: It really does sound like your work has a lot in common with FOSS communities and their principles. After all, science and software freedom have always been intertwined. If I understood you correctly, you also write your own software at ALBA? Sergi: Yes, we make Free Software, and it's one of the reasons why I work here. I'm happy to have a job that produces Free Software. We are a public institution and, even though we make Free Software, there are things we still don't publish. That's why we have to keep pushing in this direction. Some of us have also participated in the FSFE “Public Money? Public Code!” campaign. It's an incredibly important initiative. Ivana: Can you share an example of what kind of software you produce? Sergi: Sure! From the control room, the people in charge of the facility need to have precise control of all the elements to ensure the stable control of the beam. They are not close to those elements, so it's necessary to be able to control everything remotely, from the network. And those people like graphical interfaces, so, a long time ago, we started a project based on Qt to build a framework that would make it easier to build those graphical interfaces. We called it Taurus. This is a LGPL framework, and since the latest release (4.5 at the time of writing), it supports Plasma 5. Screenshot of the Taurus software, courtesy of Sergi Blanch-Torné. Ivana: It’s nice to hear that. :) Apart from using Plasma as the desktop environment on your computers, do you use any other KDE apps at ALBA? Sergi: We are a scientific paper factory, so we use Kile and Okular all the time. In the controls section, we use Kate and KWrite quite often. Of course, there are also the Emacs people and the Vim users... Personally, I use KMail, Amarok, digiKam, and for my astronomy hobby, KStars. Whenever I show someone new how to start playing with a (domestic) telescope, KStars is the perfect application to learn everything you need to know. Ivana: We’ll make sure to forward the praise to the KStars team. Do you have any advice for young scientists who would like to work at ALBA or similar institutions? What kinds of skills should they have? Any particular programming languages that would be good to know? Sergi: For sure! The important thing is to apply. Apply to any job you think will make you happy. If there's a nice work opportunity, don't pass up on it. At ALBA, we work with C/C++ and Python. Sometime, but rarely in Java. I use Cython very often. There is a variety of skills that we, as a group, provide. One single person can't do everything alone, so the community aspect is crucial to us. Our work ranges from kernel drivers to graphical interfaces. Some of us are better in one area, some in another. The important thing is that in the end, the group is capable of working on the full stack. And the main driving force is that we're all contributing to science. Ivana: We hope you know your contributions are very much appreciated. This has been a fantastic interview – we’ve learned so many things! Thank you, Sergi. It would make us all happy if you could come to Akademy, KDE’s annual conference, so please think about it. :) Sergi: Thanks for having me! The next Akademy is in Italy, isn't it? I’ll be there. Would you like to meet KDE developers, or learn how to use Plasma in your company? Come to Milan, Italy, from September 7th to 13th and join us at Akademy! Our community conference is free and open to everyone.

Latest Openwashing: Amazon, RedMonk/Microsoft/GitHub, Linux Foundation Energy, B2B on Red Hat/IBM Site

2019-07-19 05:51:59

The clearest sign of AWS' open source success wasn't built by Amazon [Ed: AWS is proprietary software, but one can always rely on Mac Asay to spin proprietary (like his employers past and  present) as "open". There's nothing "open" about AWS and in some sense it is even worse than traditional proprietary software because of the surveillance.] The RedMonk Programming Language Rankings: June 2019 [Ed: Microsoft-funded 'analyst' RedMonk bases its "Programming" 'study' on Microsoft GitHub data, which is notoriously biased] Linux Foundation Energy member TenneT “open sources” their open source strategy [Ed: Another new example of openwashing by LF in a sector that usually relies on greenwashing to 'seem' or 'feel' "ethical"] TenneT is the first European cross-border electricity transmission system operator (TSO), with activities in the Netherlands and in Germany, providing uninterrupted electricity to over 41 million people. The security of our supply is among the best in Europe, with 99.99% grid availability. With the energy transition, TenneT is contributing to a future in which wind and solar energy are the most important primary sources to produce electricity. How to apply 'release early, release often' to build a better brand [Ed: Mere openwashing of the SPAM (B2B) ‘industry’] read more

Meta-learning neural Bloom filters

2019-07-19 05:00:00

Meta-learning neural bloom filters Rae et al., ICML’19 Bloom filters are wonderful things, enabling us to quickly ask whether a given set could possibly contain a certain value. They produce this answer while using minimal space and offering O(1) inserts and lookups. It’s no wonder Bloom filters and their derivatives (the family of approximate set … Continue reading Meta-learning neural Bloom filters

Security, DRM and Privacy

2019-07-19 03:33:47

Security updates for Thursday Security updates have been issued by Arch Linux (chromium, firefox, and squid), CentOS (thunderbird and vim), Debian (libonig), SUSE (firefox, glibc, kernel, libxslt, and tomcat), and Ubuntu (libreoffice and thunderbird). EvilGnomes Linux malware record activities & spy on users [Ed: This is something the user actually installs, harming his/her machine. Original post here.]] Dubbed EvilGnomes by researchers; the malware was found masquerading as a Gnome shell extension targeting Linux’s desktop users. Mike Driscoll: New Malicious Python Libraries Found Targeting Linux They were written by a user named ruri12. These packages were removed by the PyPI team on July 9, 2019. However they were available since November 2017 and had been downloaded fairly regularly. See the original article for more details. As always, when using a package that you aren’t familiar with, be sure to do your own thorough vetting to be sure you are not installing malware accidentally. Latest Huawei 'Smoking Gun' Still Doesn't Prove Global Blackball Effort's Primary Justification We've noted a few times now how the protectionist assault against Huawei hasn't been supported by much in the way of public evidence. As in, despite widespread allegations that Huawei helps China spy on Americans wholesale, nobody has actually been able to provide any hard public evidence proving that claim. That's a bit of a problem when you're talking about a global blackballing effort. Especially when previous investigations as long as 18 months couldn't find evidence of said spying, and many US companies have a history of ginning up security fears simply because they don't want to compete with cheaper Chinese kit. That said, a new report (you can find the full thing here) dug through the CVs of many Huawei executives and employees, and found that a small number of "key mid-level technical personnel employed by Huawei have strong backgrounds in work closely associated with intelligence gathering and military activities." No love lost between security specialists and developers Unless you've been under a rock, you've noticed hardly a day goes by without another serious security foul-up. While there's plenty of blame to go around for these endless security problems, some of it goes to developers who write bad code. That makes sense. But when GitLab, a DevOps company, surveyed over 4,000 developers and operators, they found 68% of the security professionals surveyed believe it's a programmer's job to write secure code, but they also think less than half of developers can spot security holes. GitLab Survey Surfaces Major DevSecOps Challenges Ahead A report based on a survey of 4,071 software professionals published this week by GitLab, a provider of a continuous integration and continuous deployment (CI/CD) platform, found that while appreciation of the potential value of DevSecOps best practices is high, the ability to implement those practices is uneven at best. GitLab Survey Reveals Disconnect Between Developer And Security Teams In a survey conducted by GitLab, software professionals recognize the need for security to be baked into the development lifecycle, but the survey showed long-standing friction between security and development teams remain. While 69% of developers say they’re expected to write secure code, nearly half of security pros surveyed (49%) said they struggle to get developers to make remediation of vulnerabilities a priority. And 68% of security professionals feel fewer than half of developers are able to spot security vulnerabilities later in the lifecycle. Cook: security things in Linux v5.2 Over on his blog, Kees Cook runs through the security changes that came in Linux 5.2. Doctorow's novella "Unauthorized Bread" explains why we have to fight DRM today to avoid a grim future Salima has a problem: her Boulangism toaster is locked down with software that ensures that it will only toast bread sold to her by the Boulangism company… and as Boulangism has gone out of business, there's no way to buy authorized bread. Thus, Salima can no longer have toast. This sneakily familiar scenario sends our resourceful heroine down a rabbit hole into the world of hacking appliances, but it also puts her in danger of losing her home -- and prosecution under the draconian terms of the Digital Millennium Copyright Act (DMCA). Her story, told in the novella “Unauthorized Bread,” which opens Cory Doctorow’s recent book Radicalized, guides readers through a process of discovering what Digital Restrictions Management (DRM) is, and how the future can look mightily grim if we don’t join forces to stop DRM now. “Unauthorized Bread” takes place in the near future, maybe five or ten years at most, and the steady creep of technology that takes away more than it gives has simply advanced a few degrees. Salima and her friends and neighbors are refugees, and they live precariously in low-income housing equipped with high-tech, networked appliances. These gizmos and gadgets may seem nifty on the surface, but immediately begin to exact an unacceptable price, since they require residents to purchase the expensive approved bread for the toaster, the expensive approved dishes for the dishwasher, and so on. And just as Microsoft can whisk away ebooks that people “own” by closing down its ebook service, the vagaries of the business world cause Boulangism to whisk away Salima’s ability to use her own toaster. New Linux Malware Called EvilGnome Discovered; First Preview of Fedora CoreOS Now Available; Germany Bans Schools from Using Microsoft, Google and Apple; VirtualBox 6.0.10 Released; and Sparky 5.8 Has New Live/Install Media for Download Germany has banned its schools from using cloud-based productivity suites from Microsoft, Google, and Apple, because the companies weren't meeting the country's privacy requirements. Naked Security reports, that the statement from the Hessische Beauftragte für Datenschutz und Informationsfreiheit (Hesse Commissioner for Data Protection and Freedom of Information, or HBDI) said, "The digital sovereignty of state data processing must be guaranteed. With the use of the Windows 10 operating system, a wealth of telemetry data is transmitted to Microsoft, whose content has not been finally clarified despite repeated inquiries to Microsoft. Such data is also transmitted when using Office 365." The HBDI also stressed that "What is true for Microsoft is also true for the Google and Apple cloud solutions. The cloud solutions of these providers have so far not been transparent and comprehensible set out. Therefore, it is also true that for schools, privacy-compliant use is currently not possible." Microsoft, Google and Apple clouds banned in Germany’s schools Germany just banned its schools from using cloud-based productivity suites from Microsoft, Google, and Apple. The tech giants aren’t satisfying its privacy requirements with their cloud offerings, it warned. The Hessische Beauftragte für Datenschutz und Informationsfreiheit (Hesse Commissioner for Data Protection and Freedom of Information, or HBDI) made the statement following a review of Microsoft Office 365’s suitability for schools. Microsoft, Google and Apple clouds banned in Germanys schools Did you know that Germany just banned its schools from using cloud-based productivity suites from Microsoft, Google, and Apple? The tech giants aren’t satisfying its privacy requirements with their cloud offerings, it warned. What are your thoughts? The Hessische Beauftragte für Datenschutz und Informationsfreiheit (Hesse Commissioner for Data Protection and Freedom of Information, or HBDI) made the statement following a review of Microsoft Office 365’s suitability for schools. read more

CSS Timeline Style 74

2019-07-19 00:22:01

The post CSS Timeline Style 74 appeared first on Best jQuery.

Product Grid Style 68

2019-07-19 00:20:26

The post Product Grid Style 68 appeared first on Best jQuery.

Security Lessons From a New Programming Language

2019-07-18 22:30:00

A security professional needed a secure language for IoT development. So he wrote his own, applying learned lessons about memory and resources in the process.

FIME Releases API Testing Tool for Open Banking

2019-07-18 22:02:43

FIME, a provider of Host Card Emulation (HCE) and cloud-based payments consultancy and testing services, has announced a new testing tool for open banking APIs. The company’s new solution, which has been named TrustAPI, allows partners to test APIs based on their specific needs.

Asynchronous, Reactive, and RxJava2 Interfaces for Redis

2019-07-18 21:38:09

Asynchronous, reactive, and RxJava2 are all related programming models in the Java programming language. However, they aren't automatically available in Redis, the open-source software project for implementing an in-memory data store. The good news is that all three of these programming models are available in Redis using Redisson, a third-party client library that integrates Redis with Java. In this article, we'll discuss each of these three models and how you can use Redisson to deploy them within Redis.

npm uninstall co-founder --global: Laurie Voss rides off into the sunset waving goodbye

2019-07-18 20:03:09

Co-founder and chief data officer at NPM Inc, moves on Laurie Voss, the co-founder and chief data officer of widely used JavaScript package registry NPM Inc, today announced in a blog post that he left the company on July 1.…

May the best technology win

2019-07-18 19:50:20

I’ve become skeptical of arguments of the form “X is a better technology, but people won’t quit using Y.” Comparisons of technologies are multi-faceted. When someone says “X is better than Y” I want to ask “By all criteria? There’s nothing better about Y?” When people say X is better but Y won, it’s often […]

How to Install Lighttpd on CentOS 7

2019-07-18 19:01:39

Lighttpd is a secure, open-source, fast, flexible and more optimized web server. Lighttpd has a high-speed infrastructure that allows for better performance with the same hardware when compared to other alternative web-servers. Lighttpd supports the FastCGI, SCGI and CGI interfaces and allows web applications that are written in any programming language to be used with the server. In this tutorial, we will show you how to install Lighttpd on a Centos 7 VPS as well as set up MariaDB and PHP.

Uber Launches Pluto, an AI Platform for Developers

2019-07-18 18:28:26

Uber now has an artificial intelligence platform for developers. The company just announced its Plato Research Dialogue System. The system is a platform for developing, training and deploying AI-driven conversational agents.

Uber Launches Plato, an AI Platform for Developers

2019-07-18 18:28:26

Uber now has an artificial intelligence platform for developers. The company just announced its Plato Research Dialogue System. The system is a platform for developing, training and deploying AI-driven conversational agents.

FaunaDB Adds Native GraphQL Support

2019-07-18 17:24:36

FaunaDB has been updated with a GraphQL API, a web-based version of the Fauna shell, and support for role-based access control. Read more...

Microsoft turns to Rust for safer code

2019-07-18 16:54:31

Microsoft is starting to explore new programming languages to protect against security vulnerabilities. The company revealed it is turning to the systems programming language Rust to help developers build more reliable and efficient software.  Microsoft has long turned to languages like C++ and C# in their security efforts. C# has helped protect against memory corruption … continue reading The post Microsoft turns to Rust for safer code appeared first on SD Times.

What to expect in Python 3.8

2019-07-18 16:29:20

The upcoming version on Python is on its way. The Python 3.8 beta cycle begun with Python 3.8.0b1 last month. Earlier this month, the second beta was released, making Python 3.8 feature complete. Python 3.8 will go through two more planned beta release previews before the official version is released in October.  RELATED CONTENT:  Top … continue reading The post What to expect in Python 3.8 appeared first on SD Times.

Orasi Software and Saltworks Security enter into partnership with open source security leader Sonatype

2019-07-18 15:58:21

Orasi Software, a DevOps technology and consulting firm that ensures confident delivery of transformative applications that grow and simplify business, today announced that Orasi and Saltworks Security, an Orasi Company, have entered into a cooperative partnership with Sonatype, an innovator in open source code governance. For the partnership, Orasi and Saltworks will promote Sonatype’s open … continue reading The post Orasi Software and Saltworks Security enter into partnership with open source security leader Sonatype appeared first on SD Times.

Collective #533

2019-07-18 15:39:10

Is postMessage slow? * Reduced Motion Auto-Play Video * Repo Lovers * Think in Math. Write in Code. Collective #533 was written by Pedro Botelho and published on Codrops.

Jason McCreary: Lowering the time cost of testing existing Laravel applications

2019-07-18 15:30:01

In my guide to start testing your Laravel applications I mentioned two barriers to testing: time and skill. In this post, I want to address time. ⏱ I'm someone who values time over anything else. From my perspective, time is the only thing I'll never have more of. It annoys me when something ...

SD Times news digest: npm improves JavaScript security in npm Enterprise, Microsoft open sources its recipe to pre-train BERT, and Anaxi adds Bitbucket support

2019-07-18 14:57:24

Npm announced the first major update to npm Enterprise, delivering new security, compliance and developer experience features for working with JavaScript.  According to the company, the new release can “provide powerful insights to engineering managers, administrators, and corporate security teams, enabling them to make their JavaScript development more reliable and secure.” For security, administrators can … continue reading The post SD Times news digest: npm improves JavaScript security in npm Enterprise, Microsoft open sources its recipe to pre-train BERT, and Anaxi adds Bitbucket support appeared first on SD Times.

Top 10 Blogs to get you started in React Native

2019-07-18 14:31:37

Webslesson: How to Implement Date Range Filter in Laravel 5.8 Datatable

2019-07-18 14:30:01

Do you know Datatable is widely used for display data in tabular format on web page and Laravel is a widely used PHP framework for web development. Now here we will implement Datatable with Server side processing in Laravel 5.8 framework by using Ajax. Once we have implement Datatable server-side pr...

Red Hat/IBM and Fedora Leftovers

2019-07-18 13:53:07

An introduction to cloud-native CI/CD with Red Hat OpenShift Pipelines Red Hat OpenShift 4.1 offers a developer preview of OpenShift Pipelines, which enable the creation of cloud-native, Kubernetes-style continuous integration and continuous delivery (CI/CD) pipelines based on the Tekton project. In a recent article on the Red Hat OpenShift blog, I provided an introduction to Tekton and pipeline concepts and described the benefits and features of OpenShift Pipelines. OpenShift Pipelines builds upon the Tekton project to enable teams to build Kubernetes-style delivery pipelines that they can fully control and own the complete lifecycle of their microservices without having to rely on central teams to maintain and manage a CI server, plugins, and its configurations. IBM's New Open Source Kabanero Promises to Simplify Kubernetes for DevOps At OSCON, IBM unveiled a new open source platform that promises to make Kubernetes easier to manage for DevOps teams. MySQL for developers in Red Hat OpenShift As a software developer, it’s often necessary to access a relational database—or any type of database, for that matter. If you’ve been held back by that situation where you need to have someone in operations provision a database for you, then this article will set you free. I’ll show you how to spin up (and wipe out) a MySQL database in seconds using Red Hat OpenShift. Truth be told, there are several databases that can be hosted in OpenShift, including Microsoft SQL Server, Couchbase, MongoDB, and more. For this article, we’ll use MySQL. The concepts, however, will be the same for other databases. So, let’s get some knowledge and leverage it. What you need to know to be a sysadmin The system administrator of yesteryear jockeyed users and wrangled servers all day, in between mornings and evenings spent running hundreds of meters of hundreds of cables. This is still true today, with the added complexity of cloud computing, containers, and virtual machines. Looking in from the outside, it can be difficult to pinpoint what exactly a sysadmin does, because they play at least a small role in so many places. Nobody goes into a career already knowing everything they need for a job, but everyone needs a strong foundation. If you're looking to start down the path of system administration, here's what you should be concentrating on in your personal or formal training. Building blocks of syslog-ng Recently I gave a syslog-ng introductory workshop at Pass the SALT conference in Lille, France. I got a lot of positive feedback, so I decided to turn all that feedback into a blog post. Naturally, I shortened and simplified it, but still managed to get enough material for multiple blog posts. PHP version 7.2.21RC1 and 7.3.8RC1 Release Candidate versions are available in testing repository for Fedora and Enterprise Linux (RHEL / CentOS) to allow more people to test them. They are available as Software Collections, for a parallel installation, perfect solution for such tests (for x86_64 only), and also as base packages. RPM of PHP version 7.387RC1 are available as SCL in remi-test repository and as base packages in the remi-test repository for Fedora 30 or remi-php73-test repository for Fedora 28-29 and Enterprise Linux. RPM of PHP version 7.2.20RC1 are available as SCL in remi-test repository and as base packages in the remi-test repository for Fedora 28-29 or remi-php72-test repository for Enterprise Linux. QElectroTech version 0.70 RPM of QElectroTech version 0.70, an application to design electric diagrams, are available in remi for Fedora and Enterprise Linux 7. A bit more than 1 year after the version 0.60 release, the project have just released a new major version of their electric diagrams editor. read more

APIs and Application Development

2019-07-18 13:51:31

To gather insights on the current and future state of API management, we asked IT professionals from 18 companies to share their thoughts. We asked them, "How have APIs changed application development?" Here's what they told us: Easier/More Creative APIs made application development easier and more fluid. The maturity of APIs and mobile development go hand-in-hand.  As people have greater expectations for mobile apps with more personalization, it's important for app developers to rely on other services like authentication and maps. It’s doesn’t make sense to build these yourself. As we see apps doing more for users, it drives the necessity of APIs to evolve to integrate between different services.  API is a great way to externalize redundant — or complex — parts of any application. These can be ensuring the authenticity of a user (Captcha, IP verification, Email verification), communicating with them (Email provider, Chat systems), analytics, extending the functionality of the application and many more.  Developers can focus on the core IP they bring to the table and not reinvent what’s already been built, e.g., billing engine plug-in via APIs. They are not only taking advantage of other functionality that’s available, but it also reduces the cost to maintain the system. You don’t have to worry about the operational aspects though you do have to monitor SLAs. Multiple levels of redundancy and very involved DevOps teams are needed to meet 99.9% SLAs.  Thanks to APIs, developers can now focus on the core capabilities of the product they are building, leveraging the best of breed building blocks for key yet not core features. Consider an e-commerce website. Its search experience is definitely a key feature (who would tolerate having a subpar search experience while shopping today?) but is probably not a core one (while scoring/discussing items, getting notified for sales, would be). Today, it is just not cost-effective to roll out (as in install-tune-operate) an in-house search solution. The same reasoning applies for user authentication or secure payment: leverage dedicated APIs, benefit immediately from dedicated expertise, and pay as your business grows.  When it comes to application development, APIs allow developers to get much closer to reusable code and components enabling them to truly take off the shelf feature capabilities and compose new creative use cases, or even business applications. The standardization of these interfaces and how developers interact with them reduces the complexity of the development process. Developers have access to thousands of APIs that have been designed for all kinds of functions that the developers can simply reuse rather than having to build from scratch. They neither need to learn different programming languages that went behind creating those APIs nor do they need to understand the intricacies of the API; rather they only need to know what the API does and how to interact with it. It’s easier than ever to work with APIs off the shelf so to speak and cobble together new application(s) to solve a business use case or “add” new functionality for an app with existing APIs. Lastly, APIs allow for developers to put together novel applications because they have access to all these APIs whereas, in the past, these projects may have been too daunting or complex to take on if the developer had to write all of the code themselves. With APIs, developers can share their code in a controlled and consistent way for true reusability. For example, if a developer spent time writing a very unique and complex function and wants to share or reuse that internally and externally, the API allows them to scale that reusability in a way that was not possible before. As a result, developers don’t have to reinvent the same code over and over - they’re able to maintain a level of consistency where the code is in one place instead of multiple copies. From a maintenance standpoint, APIs help reduce the inconsistencies and consolidates the touchpoint in one single place. On the security side, an API allows users to open an application or a platform’s differentiated capabilities without giving away the “secret sauce” or exposing the company to potential IP  theft. Microservices Driving the microservices trend as microservices communicate with each other via APIs. It enables companies to use the right tool for the right job. We have 20+ microservices. Some for big data use C# and GoLang and then frontends in Node. Developers are able to build microservices using different languages. You don’t have to build your entire product on one framework or tech stack. Mix and match tech stacks as well as the elements of tech stacks as you see fit in the same ecosystem. Web service APIs is where the real revolution came around. People have found more strategic use cases. The real shift has been the move toward internal development. In the new world, we started talking about decomposing services. This is an extension of SOA but is the logical end to it. Microservices are designed to fit and mirror and good RESTful API design. The benefits of rethinking how teams work. It’s taking ease of use for external developers and bringing it in-house to make it more efficient to develop applications. Anyone can become a digital product maker.   Mobile Web APIs have fundamentally changed application development. They define a contract and are a means of communication that enables two completely different applications to talk to one another. Behind every mobile app is an API. Behind every internet-enabled IoT device is an API. The massive shifts that we're seeing on the infrastructure side of things, from Docker to Kubernetes, would not be possible without APIs. Other APIs have greatly changed our development as well as our product. We had focused on file-based integration in the past including EDI and other flat files. As we have evolved the product into a comprehensive integration platform, we have added significant API capability including pre-built connectors for popular SaaS APIs, API consumer capability, API provider capability and also platform APIs that allow you to operate the platform.  APIs are the connective tissue that links various software systems and online services and are key to unlocking data that typically exist in silos in an enterprise. They have changed application development in the following ways: 1) APIs are the new libraries — a software application now integrates with APIs instead of including libraries to deliver a specific capability. 2) APIs enable specialization — they are developed to expose a specific piece of functionality such as payment processing or SMS functionality that can be integrated with other systems. As a consumer, APIs have democratized development in much the same way that the cloud has democratized operations.  With the cloud, you no longer need to sink a bunch of money upfront into buying expensive hardware before ever bringing your ideas to market.  With APIs, you no longer need to sink a bunch of money into buying expensive on-prem software to which you shackle your nascent business. Instead, you find API vendors who can give you the functionality you need, when you need it, metered to your usage. As a producer of APIs, you have new opportunities to forge deep integrations with your customers.  Once someone integrates with an API you provide, they have a sunk development cost they’ll be loath to abandon.  And if you provide an adjacent API (and don’t screw up by giving it a radically different interface), your customers will be inclined to adopt it rather than code up a completely new client to call another vendor.  Since we’re a big provider of APIs it was critical for us to be consumers ourselves. That is absolutely necessary to establish a standard for usability and completeness. So we followed the API-first principle of design. Every function we developed from day one was first available via API and then used in our own support as well as user-facing applications. API-first design is a must for anyone who provides APIs. I’d go as far as saying — everything useful your application does should be available via API. There should be no secret internal operations. Anything must be done via API. Even if you don’t expose some endpoint to your customers right away, designing them as if they were public-facing should increase quality considerably. The better documented they are, over time you will find more uses for them, what you initially thought of an internal support overhead might become a new killer API product.  It's more so that application development has evolved to create a need for APIs. In the past, there was always one consumer of our data — our own application. Now, most any modern application’s data is multi-consumer, with customers, partners, and also other internal applications all needing access to the same data. Our databases were never designed to handle this model, so APIs were born.  We see APIs as a driving force behind application development. First of all, they are essentially building blocks allowing to speed up and enrich software solutions with new features and capabilities. The bottom line here is that APIs help to save time and resources by providing flexibility in development and giving the opportunity to use several data sources at once. Less time and more flexibility in building software solutions lead to reduced development costs and considerably lower entry thresholds. If APIs didn’t exist, we wouldn’t have a good half of the solutions we enjoy using today. Here's who shared their insights:

Facebook’s User DB — Is It SQL or NoSQL?

2019-07-18 13:51:08

Ever wondered which database Facebook (FB) uses to store the profiles of its 2.3B+ users? Is it SQL or NoSQL? How has FB database architecture evolved over the last 15+ years? As an engineer in the FB database infrastructure team from 2007 to 2013, I had a front-row seat in witnessing this evolution. There are invaluable lessons to be learned by better understanding the database evolution at the world’s largest social network, even though most of us won’t be facing exactly the same challenges in the near future. This is because the fundamental tenets that underpin FB’s internet-scale, globally-distributed architecture today apply to many business-critical enterprise apps such as multi-tenant SaaS, retail product catalog/checkout, travel bookings, and gaming leaderboards. Initial Architecture As any FB user can easily understand, his/her profile is not simply a list of attributes such as name, email, interests and so on. It is in fact a rich social graph that stores all friend/family relationships, groups, check-ins, likes, shares and more. Given the data modeling flexibility of SQL and the ubiquity of MySQL when FB started, this social graph was initially built as a PHP application powered by MySQL as the persistent database and memcache as a “lookaside” cache.

Vent Your Frustration in the MDN Developer and Designer Survey

2019-07-18 13:28:09

What are your bugbears about developing for the web. Let Mozilla be your agony aunt and express your frustrations in the hope that browser vendors and WC3 will take notice of the MDN Developer and Designer Survey. Read more...

Create a Transpiler: From VBA to VB.NET

2019-07-18 13:20:45

In this tutorial, we show how to create a transpiler, a software that can be useful in a few scenarios: if you have a large codebase in a language that does not fit your needs anymore or if you still want to keep developing in one language, but you need better performance or need to run in a specific environment.  The example transpiler will convertVisual Basic for Applications (VBA) to Visual Basic.NET (VB.NET) code. There are companies that need to keep using VBA because it is a simple language used by non-developers inside Excel. However, there could also be a need for increased performance or to mix calculations made by analysts with parts developed by professional developers. In such cases, individuals can transpile from VBA to VB.NET and let everything run in a single environment.

IValue: Efficient Representation of Dynamic Types in C++

2019-07-18 13:20:26

Introduction In traditional SQL systems, a column's type is determined when the table is created and never changes while executing a query. If you create a table with an integer-valued column, the values in that column will always be integers (or possibly NULL). Rockset, however, is dynamically typed, which means that we often don't know the type of a value until we actually execute the query. This is similar to other dynamically typed programming languages where the same variable may contain values of different types at different points in time:

Site News: Blast from the Past - One Year Ago in PHP (07.18.2019)

2019-07-18 13:05:02

Here's what was popular in the PHP community one year ago today:TutsPlus.com: Set Up Routing in PHP Applications Using the Symfony Routing Component Kevin Schroeder: Monitoring Magento Jobs and Crons PHP.net: PHP 7.1.20 & 5.6.37 Released Matt Sparks: I Want Scalar Objects in PHP Robert Basic: Legacy code is 3rd party code PHP.net: PHP 7.3.0alpha4 Released Alejandro Celaya: Demonstrating the interoperability and decoupling of Zend Expressive Pineco.de: Extending Laravel’s Collection With Macros Symfony Blog: The conference schedule for SymfonyLive London 2018 is out! Matthias Noback: Objects should be constructed in one go Laravel News: New Outer Array Functions Coming to PHP 7.3 Laravel News Podcast: Episode 65 - Jigsaws, Git tools, and Laravel development packages Matthew Weier O'Phinney: Notes on GraphQL Tomas Votruba: New in Statie 4.5: Twig Support Nikola Posa: Lazy loading services using Zend Service Manager Symfony Blog: SymfonyLive Berlin 2018 Call for Papers

Uglipop.js : A Lightweight Non-fancy Modal/Lightbox

2019-07-18 12:30:46

Uglipop.js is an ultra lightweight,unstyled 2kb Minimal Javascript. Is Lightweight Non-fancy Modal Written is JS , Uglipop is highly customizable.Things That can be used with Uglipop: You Can Use Div. You Can […] The post Uglipop.js : A Lightweight Non-fancy Modal/Lightbox appeared first on Best jQuery.

Peter Norvig: Design Patterns in Dynamic Programming (1996) [pdf]

2019-07-18 09:38:59


Design Patterns in Dynamic Programming (1996) [pdf]

2019-07-18 09:38:59


Show HN: GraphQL Zeus – Autocomplete GraphQL Queries in JavaScript and TS

2019-07-18 09:35:39


Recreating the Fool's Mate Chess Move with CSS Grid

2019-07-18 08:56:01


PHP Internals News: Episode 19: Deprecate curly brace syntax - Derick Rethans

2019-07-18 08:19:00

PHP Internals News: Episode 19: Deprecate curly brace syntax London, UK Thursday, July 18th 2019, 09:19 BST In this episode of "PHP Internals News" I chat with Theodore Brown (Twitter, Website, GitHub) about the "Deprecate curly brace syntax for accessing array elements and string offsets" RFC. The RSS feed for this podcast is https://derickrethans.nl/feed-phpinternalsnews.xml, you can download this episode's MP3 file, and it's available on Spotify and iTunes. There is a dedicated website: https://phpinternals.news Show Notes RFC: Deprecate curly brace syntax for accessing array elements and string offsets Credits Music: Chipper Doodle v2 — Kevin MacLeod (incompetech.com) — Creative Commons: By Attribution 3.0

Dividing responsibilities - Part 1 - Matthias Noback

2019-07-18 07:30:00

I'm happy to share with you an excerpt of my latest book, which is currently part of Manning's Early Access Program. Take 37% off Object Design Style Guide by entering fccnoback into the discount code box at checkout at manning.com. Chapter 7: Dividing responsibilities We've looked at how objects can be used to retrieve information, or perform tasks. The methods for retrieving information are called query methods, the ones that perform tasks are command methods. Service objects may combine both of these responsibilities. For instance, a repository (like the one in Listing 1) could perform the task of saving an entity to the database, and at the same time it would also be capable of retrieving an entity from the database. Listing 1. The PurchaseOrderRepository can save and retrieve a PurchaseOrder entity. interface PurchaseOrderRepository { /** * @throws CouldNotSavePurchaseOrder */ public function save(PurchaseOrder purchaseOrder): void; /** * @throws CouldNotFindPurchaseOrder */ public function getById(int purchaseOrderId): PurchaseOrder; } Since saving and retrieving an entity are more or less each other's inverse operations, it's only natural to let one object have both responsibilities. However, in most other cases you will find that performing tasks and retrieving information are better off being divided amongst different objects. Separate write models from read models As we saw earlier, there are services, and other objects. Some of these other objects can be characterized as Entities, which model a particular domain concept. In doing so, they contain some relevant data, and offer ways to manipulate that data in valid and meaningful ways. Entities can also expose data, allowing clients to retrieve information from them, whether that is exposed internal data (like the date on which an order was placed), or calculated data (like the total amount of the order). In practice, it turns out that different clients use entities in different ways. Some clients will want to manipulate an entity's data using its command methods, while others just want to retrieve a piece of information from it using its query methods. Nevertheless, all these clients will share the same object, and potentially have access to all the methods, even when they don't need them, or shouldn't even have access to them. You should never pass an entity that can be modified to a client that isn't allowed to modify it. Even if the client doesn't modify it today, one day it might, and then it will be hard to find out what happened. That's why the first thing you should do to improve the design of an entity, is separate the Write model from the Read model. We'll find out how to accomplish this by looking at an example of a PurchaseOrder entity (Listing 2). A purchase order represents the fact that a company buys a product from one of its suppliers. Once the product has been received, it's shelved in the company's warehouse. From that moment on the company has this product in stock. We'll use the same example for the remaining part of this chapter and work out different ways to improve it. Listing 2. The PurchaseOrder entity. final class PurchaseOrder { private int purchaseOrderId; private int productId; private int orderedQuantity; private bool wasReceived; private function __construct() { } public static function place( int purchaseOrderId, int productId, int orderedQuantity ): PurchaseOrder { /* * For brevity, we use primitive type values, while in * practice, the use of value objects is recommended. */ purchaseOrder = new self(); purchaseOrder.productId = productId; purchaseOrder.orderedQuantity = orderedQuantity; purchaseOrder.wasReceived = false; return purchaseOrder; } public function markAsReceived(): void { this.wasReceived = true; } public function purchaseOrderId(): int { return this.purchaseOrderId; } public function productId(): int { return this.productId; } public function orderedQuantity(): int { return this.orderedQuantity; } public function wasReceived(): bool { return this.wasReceived; } } In the current implementation, Truncated by Planet PHP, read more at the original (another 11989 bytes)

IBM, Fedora, and Servers

2019-07-18 03:29:33

Red Hat CTO Chris Wright to host online Q&A On Tuesday, July 23, 2019, Red Hat senior vice president and CTO Chris Wright will host an online forum to answer questions about what IBM's landmark acquisition of Red Hat means for the company and its work in open source projects. Announcing Fedora CoreOS preview On behalf of the Fedora CoreOS Working Group, I'm thrilled to announce the first preview release of Fedora CoreOS. Fedora CoreOS is built to be the secure and reliable host for your compute clusters. It's designed specifically for running containerized workloads without regular maintenance, automatically updating itself with the latest OS improvements, bug fixes, and security updates. The initial preview release of Fedora CoreOS runs on bare metal, QEMU, VMware, and AWS, on x86_64 only. It supports provisioning via Ignition spec 3.0.0 and the Fedora CoreOS Config Transpiler, automatic updates with Zincati and rpm-ostree, and running containers with Podman and Moby. In the coming months, we'll be adding more platforms, building out functionality, and creating documentation to get Fedora CoreOS ready for production use. For now, the Fedora CoreOS preview should not be used for production workloads, and it might change in incompatible ways before the stable release. Pivotal Brings the Magic of CF Push to Kubernetes Today, Pivotal released an alpha version of its flagship product, Pivotal Application Service, powered by Kubernetes. Access to the bits are invite-only; contact your account team or sign up via the form at the end of this post for access. The documentation is publicly available here. Kubernetes is the new IaaS. And that means we're embedding it into more parts of Pivotal technology. It also means that we're here to help you achieve terrific business outcomes on top of this foundation. Build cloud-native apps faster for Kubernetes with Kabanero, a new open source project from IBM As companies modernize their infrastructure and adopt a hybrid cloud strategy, they’re increasingly turning to Kubernetes and containers. Choosing the right technology for building cloud-native apps and gaining the knowledge you need to effectively adopt Kubernetes is difficult. On top of that, enabling architects, developers, and operations to work together easily, while having their individual requirements met, is an additional challenge when moving to cloud. To lower the barrier of entry for developers to use Kubernetes and to bring together different disciplines, IBM created new open source projects that make it faster and easier for you to develop and deploy applications for Kubernetes. Kubernetes VS PaaS If you asked me 3 years ago, I would probably define the professional part of myself as a “Rails developer”. Back then, most of my new projects started with a proof of concept deployed on a free Heroku account. The reason is simple, that was the fastest way to get my Ruby application live. At the same time it was the cheapest (free right?) so that was a no-brainer. The last 2.5 years, my work has been mostly on CloudFoundry and Kubernetes. CloudFoundry is an Open Source PaaS solution and Kubernetes is a Container orchestration platform. I work on a project that combines these two (SUSE CloudFoundry runs CloudFoundry on top of Kubernetes). There is an argument I’ve heard more than once regarding running a PaaS on top of Kubernetes and that is: “Why deploy CloudFoundry on top of Kubernetes and not use Kubernetes directly?”. Maybe it’s my science studies, maybe it’s Myth Busters, but I had to test this theory. Thankfully, 2 times a year we get a week to hack on anything we want at SUSE (Check it out) so I got the time I needed a couple of weeks ago. Issue #2019.07.22 – Kubeflow and Conferences, 2019 Kubeflow at OSCON 2019 – Over 10 sessions! Covering security, pipelines, productivity, ML ops and more. Some of the sessions are led by end-users, which means you’ll get the real deal about using Kubeflow in your production solution How to earn a promotion as a sysadmin There’s plenty of general advice when it comes to career advancement, such as, “Work hard and you’ll get ahead.” General advice can start to feel a little pat—too simplistic to put into action, or too difficult to measure. Surely, it’s not as simple as, “Work hard and watch the promotions roll in.” Not to mention, how would you know if it’s the right promotion. Is it one that matches your goals? This question becomes particularly important in IT. What if you’re a sysadmin who’s not particularly interested in managing a team of people? Do you grin and bear it while others move up the food chain? read more

Security: Linux 5.2 Dissection, New Patches, New ZDNet (CBS) FUD and Kali NetHunter App Store

2019-07-18 01:05:53

Kees Cook: security things in Linux v5.2 Gustavo A. R. Silva is nearly done with marking (and fixing) all the implicit fall-through cases in the kernel. Based on the pull request from Gustavo, it looks very much like v5.3 will see -Wimplicit-fallthrough added to the global build flags and then this class of bug should stay extinct in the kernel. That’s it for now; let me know if you think I should add anything here. We’re almost to -rc1 for v5.3! Security updates for Wednesday Security updates have been issued by Debian (libreoffice), Red Hat (thunderbird), SUSE (ardana and crowbar, firefox, libgcrypt, and xrdp), and Ubuntu (nss, squid3, and wavpack). Malicious Python libraries targeting Linux servers removed from PyPI [Ed: Python does not run only on Linux, but Microsoft-funded sites like ZDNet (CBS) look for ways to blame everything on "Linux", even malicious software that gets caught in the supply chain] Malicious Python Libraries Discovered on PyPI, Offensive Security Launches the Kali NetHunter App Store, IBM Livestreaming a Panel with Original Apollo 11 Technicians Today, Azul Systems Announces OpenJSSE and Krita 4.2.3 Released Offensive Security, the creators of open-source Kali Linux, has launched the Kali NetHunter App Store, "a new one stop shop for security relevant Android applications. Designed as an alternative to the Google Play store for Android devices, the NetHunter store is an installable catalogue of Android apps for pentesting and forensics". The press release also notes that the NetHunter store is a slightly modified version of F-Droid: "While F-Droid installs its clients with telemetry disabled and asks for consent before submitting crash reports, the NetHunter store goes a step further by removing the entire code to ensure that privacy cannot be accidentally compromised". See the Kali.org blog post for more details. read more

Bootstrap Modal Style 13

2019-07-18 00:22:54

The post Bootstrap Modal Style 13 appeared first on Best jQuery.

PL/I as a Tool for System Programming (1969)

2019-07-18 00:21:27


Navigation Menu Style 77

2019-07-18 00:20:51

The post Navigation Menu Style 77 appeared first on Best jQuery.

The Programmer's Guide to Fractals

2019-07-18 00:00:00

Fractals encompass interesting pure maths and computing - and they are very pretty to look at. It is almost a rite of passage that every programmer has to face - write some sort of fractal viewer! Read more...

Stream Announces iOS/Swift Library for Chat

2019-07-17 23:16:34

Stream.io provides developers with tools for adding scalable feeds, activity streams, and chat functionality to their applications via the Stream API. The company has recently announced a new SDK that aims to streamline the addition/creation of chat functionality for iOS applications.

YouAppi Delivers Open Measurement SDK

2019-07-17 22:20:14

YouAppi has released its Open Measurement Software Development Kit (OM SDK), which is designed to make possible third-party viewability and verification measurement for ads served to mobile app environments without requiring multiple Ad Verification service providers (or measurement providers) SDKs.

Podcast Episode 30: WordPress Ad Inserter Plugin Vulnerability and Other News

2019-07-17 20:22:05

This week we review a critical vulnerability in the Ad Inserter plugin, currently installed on over 200,000 WordPress sites. The vulnerability, discovered by our Director of Threat Intelligence Sean Murphy, was patched quickly by the developer. We also cover Google’s decision to remove Chrome’s built-in XSS protection, a researcher’s discovery of vulnerability in Instagram’s 2FA, ...Read More The post Podcast Episode 30: WordPress Ad Inserter Plugin Vulnerability and Other News appeared first on Wordfence.

What's Coming in Python 3.8

2019-07-17 19:35:04


OSCON 2019: Data Asset eXchange, Kabanero, WSO2 API Micrograteway 3.0, and Red Sky Ops

2019-07-17 18:25:28

The O’Reilly Open Source Software Conference (OSCON) is taking place this week in Oregon, gathering together industry leaders to talk about open source, cloud native, data-driven solutions, AI capabilities and product management.  “OSCON has continued to be the catalyst for open source innovation for twenty years, providing organizations with the latest technological advances and guidance … continue reading The post OSCON 2019: Data Asset eXchange, Kabanero, WSO2 API Micrograteway 3.0, and Red Sky Ops appeared first on SD Times.

APIs show Faster Growth Rate in 2019 than Previous Years

2019-07-17 18:13:52

The ProgrammableWeb directory eclipsed the 22,000-API mark in June 2019 and this milestone gives us a chance to look at what the data can tell us about the API economy. Since 2005, we've seen APIs grow from a curiosity to a trend, and now to the point where APIs are core to many businesses. APIs have provided tremendous value to countless organizations and developers, which is reflected in their continued growth.

Seven Easy Steps to Install MiniProfiler on an ASP.NET MVC Website

2019-07-17 17:32:24

MiniProfiler Today, I wanted to add MiniProfiler to an ASP.NET MVC web application (not .NET Core), but unfortunately, the NuGet package doesn't set up things correctly. The documentation is a bit lacking, and their sample project doesn't work. So what was supposedly a simple task, took almost a full day of research to finally complete.

How to Use a Vue Pivot Grid UI Component in Your Web App

2019-07-17 17:31:04

In this post, we will review the PivotGrid component. Unlike a typical grid, a PivotGrid lets you change the way the data is presented. For example, you may have a data set with inventory items that include the number in stock, category, store, and quarter. You can create a PivotGrid to analyze the total inventory in stock by store and by quarter. Or, you can view the inventory in stock by category and by store. These different perspectives can be viewed in the same grid just by selecting which fields to use for the row and column of the grid. In a regular grid, you could only create one static view.  Getting Started We will need the PivotGrid, the PivotConfigurator, and the PivotDataSource components. The PivotGrid displays our summarized data. The PivotConfigurator helps us build the PivotGrid. And the PivotDataSource is an extension of the DataSource component used to bind our data to the PivotGrid and PivotConfigurator. First, we will initialize our project using the Vue webpack-simple template. Then, we will install Kendo UI, a theme, the PivotGrid package, and the DataSource package.

Best Practices for Using Maybes and Creating Default Values

2019-07-17 17:30:59

Introduction You’ve learned that using Maybes allows you to get rid of null pointer exceptions (i.e. “undefined is not a function”). However, now your application fails and gives no indication as to why. Errors would have left a stack trace that could have provided a hint as to where the problem originated, but, clearly here, you don't have that to rely on. What should you be doing instead? Null Pointers in Python vs. Ruby, Lua, and JavaScript Let’s define what we mean by null pointers and how you usually encounter them. Most null pointers you’ll run into are from either accessing a property of an object to show on the screen or calling a method on an object.

Conference Report: Esri User Conference 2019

2019-07-17 17:30:54

I appreciate the opportunity to attend Esri's 2019 User Conference July 8 -12 at the San Diego Convention Center with more than 18,500 attendees. Prior to the plenary sessions on Monday, there were 18 pre-conference seminars and four summits that ran concurrently with the seminars and the conference: Engineering — which explored how engineering companies today are using new GIS technology

Show HN: Graph Processing with Python and GraphBLAS

2019-07-17 17:28:28


Malicious Python Libraries Discovered on PyPI, Offensive Security Launches the Kali NetHunter App Store, IBM Livestreaming a Panel with Original Apollo 11 Technicians Today, Azul Systems Announces Ope

2019-07-17 17:00:34

News briefs for July 17, 2019.

PHP Podcasts: PHP Internals News: Episode 18: Strict Operator Directive

2019-07-17 17:00:02

PHP Internals News: Episode 18: Strict Operator Directive London, UK Thursday, July 11th 2019, 09:18 BST In this seventeenth episode of "PHP Internals News" I talk with Arnold Daniels (Twitter,...

Microsoft To Explore Using Rust

2019-07-17 16:49:00

Microsoft plans to explore using the Rust programming language as an alternative to C, C++, and others, as a way to improve the security posture of its and everyone else's apps. From a report: The announcement was made yesterday by Gavin Thomas, Principal Security Engineering Manager for the Microsoft Security Response Center (MSRC). "You're probably used to thinking about the Microsoft Security Response Center as a group that responds to incidents and vulnerabilities," Thomas said. "We are a response organization, but we also have a proactive role, and in a new blog series we will highlight Microsoft's exploration of safer system programming languages, starting with Rust." The end game is to find a way to move developers from the aging C and C++ programming language to so-called "memory-safe languages." Memory-safe languages, such as Rust, are designed from the ground up with protections against memory corruption vulnerabilities, such as buffer overflows, race conditions, memory leaks, use-after free and memory pointer-related bugs. Read more of this story at Slashdot.

Technical Blogging 2nd Ed (Pragmatic Bookshelf)

2019-07-17 16:42:20

This step-by-step guide to technical blogging, with the subtitle "Amplify Your Influence" covers techniques to attract and keep an audience of loyal, regular readers. Author Antonio Cangiano suggests ways to reach your goals and amplify your influence in your field, to get more more users for your startup or open source project, or find an outlet to share your expertise. The book shows how to plan, create, maintain, and promote a successful blog that the author says will have remarkable effects on your career or business. <ASIN:1680506471> Read more...

SD Times news digest: Mendix Summer 2019 release, ActiveState support for Python 2, and Tidelift and Ruby Together team up

2019-07-17 16:08:33

Low-code and no-code tool provider Mendix introduced Mendix Studio: an IDE called Studio Pro, and Mendix Assist: an AI tool for building low-code apps, all included in the Summer 2019 release of the platform.  The company explained that the new release was designed to greatly expand the number of people who can fully participate in … continue reading The post SD Times news digest: Mendix Summer 2019 release, ActiveState support for Python 2, and Tidelift and Ruby Together team up appeared first on SD Times.

TensorFlow With Keras (Part 2)

2019-07-17 15:30:55

This article is in continuation to Part 1, Tensorflow for deep learning. Make sure you go through it for a better understanding of this case study. Keras is a high-level neural network API written in Python and capable of running on top of Tensorflow, CNTK, or Theano. It was developed with a focus on enabling fast experimentation. In this article, we are going to cover one small case study for fashion mnist.

NativeScript 6.0 released with full support for Vue.js

2019-07-17 15:17:53

The latest version of the open-source framework for building native apps is now available. NativeScript 6.0 comes with support for Angular 8 and Vue.js as well as the ability to shorten development and testing time.  RELATED CONTENT: Web development: So many choices to get the right fit “The latest release of NativeScript brings some amazing … continue reading The post NativeScript 6.0 released with full support for Vue.js appeared first on SD Times.