Code it
4.2K views | +0 today
Scooped by nrip
onto Code it!

Classy Methods, a Sense of Self (Classes Part 2)

Classy Methods, a Sense of Self (Classes Part 2) | Code it |
Ratcatcher     Hello - Mr and Mrs Concrete?
Both     Yes.
Ratcatcher     Well, well, well, well, well, well, well, well, well, well, well, how very nice. Allow me to introduce myself. I ...
No comment yet.
Code it
This is a curated resource for programmers and software architects. It is regularly updated with Articles, Hacks, How Tos, Examples and Code.
Curated by nrip
Your new post is loading...
Your new post is loading...
Scooped by nrip!

New Quantum Algorithms Finally Crack Nonlinear Equations

New Quantum Algorithms Finally Crack Nonlinear Equations | Code it |

Simple phenomena, such as how sap flows down a tree trunk, are straightforward and can be captured in a few lines of code using what mathematicians call linear differential equations.


But in nonlinear systems, interactions can affect themselves: When air streams past a jet’s wings, the air flow alters molecular interactions, which alter the air flow, and so on. This feedback loop breeds chaos, where small changes in initial conditions lead to wildly different behavior later, making predictions nearly impossible — no matter how powerful the computer.


“This is part of why it’s difficult to predict the weather or understand complicated fluid flow,” said Andrew Childs, a quantum information researcher at the University of Maryland. “There are hard computational problems that you could solve, if you could [figure out] these nonlinear dynamics.”


That may soon be possible. In separate studies posted in November, two teams — one led by Childs, the other based at the Massachusetts Institute of Technology — described powerful tools that would allow quantum computers to better model nonlinear dynamics.

Quantum computers take advantage of quantum phenomena to perform certain calculations more efficiently than their classical counterparts. Thanks to these abilities, they can already topple complex linear differential equations exponentially faster than classical machines. Researchers have long hoped they could similarly tame nonlinear problems with clever quantum algorithms.
No comment yet.
Scooped by nrip!

Microsoft feature and application retirement dates to remember in 2021

Microsoft feature and application retirement dates to remember in 2021 | Code it |

With Microsoft's commitment to a continuously updated Windows 10 operating system and Microsoft 365 productivity suite, old features and applications are removed almost as fast as new features are introduced.


The year 2021 will see a number of important Microsoft applications reach a state of deprecation and retirement.


2021 Microsoft feature retirement dates

  • TLS 1.0 and TLS 1.1—Jan. 11, 2021
  • Skype for Business Online Connector—Feb. 15, 2021
  • Microsoft Edge Legacy—March 9, 2021
  • Microsoft 365 support for IE 11 – Aug. 17, 2021
  • Visio Web Access—Sept. 30, 2021


No comment yet.
Scooped by nrip!

Why are scientists turning to Rust ?

Why are scientists turning to Rust ? | Code it |

Despite having a steep learning curve, the programming language offers speed and safety.


First created in 2006 by Graydon Hoare as a side project while working at browser-developer Mozilla, headquartered in Mountain View, California, Rust blends the performance of languages such as C++ with friendlier syntax, a focus on code safety and a well-engineered set of tools that simplify development.


Portions of Mozilla’s Firefox browser are written in Rust, and developers at Microsoft are reportedly using it to recode parts of the Windows operating system.


The annual Stack Overflow Developer Survey, which this year polled nearly 65,000 programmers, has ranked Rust as the “most loved” programming language for 5 years running. The code-sharing site GitHub says Rust was the second-fastest-growing language on the platform in 2019, up 235% from the previous year.







nrip's insight:

I love Rust! Its fast and allows me to do the large scale number crunching I need to analyze clinical datasets against. But it takes time to learn and after a couple years of using it I still find myself not smooth at it.


Its a compiler driven language like C/C++

But it has a stricter, protective set of rules like interpreter driven languages aka python, JavaScript to ensure crashes are avoided by not letting problematic code compile.

No comment yet.
Scooped by nrip!

12 Things Every Junior Developer Should Learn

12 Things Every Junior Developer Should Learn | Code it |
  • learn how a relational database works (this is always useful)
  • learn how HTTP works in general
  • learn how to debug code in one language (it's pretty much the same in others, you can recycle most of the knowledge)
  • be familiar with the command line
  • know how to find code (either using your IDE or grep on the command line)
  • knowing the basics of regular expressions will get you far (also to find code in the previous point)
  • know how to find solutions using a search engine
  • know how to operate git (I would say any source control but git is the de facto standard so you might as well start with that)
  • ask questions, especially if you think they're not worth being asked
  • learn how timezones work (not kidding, lots of devs are still fuzzy on these)
  • learn how unicode and utf-8 work (same reason for timezones)
  • have a general idea of how caching (CPU, in memory, disk, HTTP) works as a concept


more at


No comment yet.
Scooped by nrip!

What makes PHP 7 so special ? 5 New Features in #PHP7

What makes PHP 7 so special ? 5 New Features in #PHP7 | Code it |


The developers worked very hard to refactor the PHP codebase in order to reduce memory consumption and increase performance. And they certainly succeeded.

Benchmarks for PHP 7 consistently show speeds twice as fast as PHP 5.6 and many times even faster! 

2. Type Declarations

Type declarations simply means specifying which type of variable is being set instead of allowing PHP to set this automatically. PHP is considered to be a weak typed language. In essence, this means that PHP does not require you to declare data types. 

3. Error Handling

The next feature we going to cover are the changes to Error Handling. Handling fatal errors in the past has been next to impossible in PHP. A fatal error would not invoke the error handler and would simply stop your script. On a production server, this usually means showing a blank white screen, which confuses the user and causes your credibility to drop. It can also cause issues with resources that were never closed properly and are still in use or even locked.


In PHP 7, an exception will be thrown when a fatal and recoverable error occurs, rather than just stopping the script. Fatal errors still exist for certain conditions, such as running out of memory, and still behave as before by immediately stopping the script. An uncaught exception will also continue to be a fatal error in PHP 7. This means if an exception thrown from an error that was fatal in PHP 5 goes uncaught, it will still be a fatal error in PHP 7.


4. New Operators

Spaceship Operator

PHP 7 also brings us some new operators. The first one we’re going to explore is the spaceship operator. With a name like that, who doesn’t want to use it? The spaceship operator, or Combined Comparison Operator, is a nice addition to the language, complementing the greater-than and less-than operators.

Null Coalesce Operator

Another new operator, the Null Coalesce Operator, is effectively the fabled if-set-or. It will return the left operand if it is not NULL, otherwise it will return the right. The important thing is that it will not raise a notice if the left operand is a non-existent variable.

5. Easy User-land CSPRNG

What is Easy User-land CSPRNG?

User-land refers to an application space that is external to the kernel and is protected by privilege separation, API for an easy to use and reliable Cryptographically Secure PseudoRandom NumberGenerator in PHP.

Essentially secure way of generating random data. 


read the original article at


No comment yet.
Scooped by nrip!

Upgrade WordPress to PHP 7: How to Do It Safely

Upgrade WordPress to PHP 7: How to Do It Safely | Code it |

To upgrade WordPress to PHP 7, the process itself is easy.


In this article, we'll teach you how to make the switch and upgrade WordPress to PHP 7 the right way.


If you have full privileges on your server, you can upgrade WordPress to PHP 7 using your command line. On the other hand, if you’re on shared or managed hosting, you’ll probably have to ask your provider’s support team to upgrade your site manually.


In either case, the actual process is straightforward. The problem is that if you don’t take any precautionary measures, you run the risk of breaking elements of your site that don’t play nicely with PHP 7. That’s why we’re partial to a different approach that enables you to eliminate most of the risk involved.


Step #1: Back up your website

Step #2: Create a local staging copy of your site

There are plenty of ways to create a staging copy of your website, Try Local by Flywheel because it’s easy to set up. Plus, you don’t need to be a Flywheel customer to get the app. Just go to the website, fill out a short form, and download the tool.

Step #3: Test your staging site

Step #4: Upgrade your live site to PHP 7

There are two ways to approach it, depending on your host:


  1. If you use a Virtual Private Server (VPS) or any other hosting option that gives you full control, you can upgrade WordPress to PHP 7 from the command line.
  2. If your host doesn’t give you this level of access, you can ask them to upgrade you to the latest version through their support system.


When you’re done, be sure to test your site’s performance again (just to be safe). 







nrip's insight:
You must upgrade your Wordpress sites to run on PHP7.
As mentioned earlier, security updates to PHP5+ branches will end on December 31, 2018.
Ask/Urge/Force your website developers, web managers, website hosts to move your sites to run on PHP7+ 


No comment yet.
Scooped by nrip!

Open Sourcing Active Question Reformulation with Reinforcement Learning

Open Sourcing Active Question Reformulation with Reinforcement Learning | Code it |

Posted by Michelle Chen Huebscher, Software Engineer and Rodrigo Nogueira, New York University PhD Student and Software Engineering Intern


Natural language understanding is a significant ongoing focus of Google’s AI research, with application to machine translation, syntactic and semantic parsing, and much more. Importantly, as conversational technology increasingly requires the ability to directly answer users’ questions, one of the most active areas of research we pursue is question answering (QA), a fundamental building block of human dialogue.


Because open sourcing code is a critical component of reproducible research, we are releasing a TensorFlow package for Active Question Answering (ActiveQA), a research project that investigates using reinforcement learning to train artificial agents for question answering


read the entire post at



No comment yet.
Scooped by nrip!

Tech FAQs: Using curl to fetch from a URL which outputs a dynamically generated Excel file

Tech FAQs: Using curl to fetch from a URL which outputs a dynamically generated Excel file | Code it |
We often come across this case where another company provides us with a url which we can  use via a browser to get an excel or pdf report. 
Usually it also accepts one or more parameters, which are used by the backend script in the report generation process.
How does one call this via CURL to allow our application to fetch the reports automatically  based on some pre defined schedule, or in a bulk fashion for a set of running parameters.
No comment yet.
Scooped by nrip!

Mozilla, EFF And Others Band Together To Provide Free SSL Certificates

Mozilla, EFF And Others Band Together To Provide Free SSL Certificates | Code it |

Mozilla, Cisco, Akamai, the Electronic Frontier Foundation, IdenTrust and researchers at the University of Michigan are working through the Internet Security Research Group to create a new certificate authority to offer digital certificates for free to anybody who owns a web domain. The “Let’s Encrypt” group will launch this service next summer.

Currently, the EFF writes today, “HTTPS (and other uses of TLS/SSL) is dependent on a horrifyingly complex and often structurally dysfunctional bureaucracy for authentication.”

The Let’s Encrypt project aims to make getting certificates not just free, but also as easy as possible. It will take two simple shell commands to enable HTTPS for any given site that wants to use it. All of the certificates that are issues or revoked will be public and the team aims to make its protocols an open standard that other certificate authorities can adopt.

Developers who want to test the service can head over to  to take a look at the code, but this is definitely not meant for production servers yet and if you decide to ignore that warning, chances are your users will see lots of warnings about your certificate that will keep them from ever seeing your site.

more at

No comment yet.
Scooped by nrip!

7 More Mistakes Commonly Made by PHP Developers

7 More Mistakes Commonly Made by PHP Developers | Code it |
Here are seven mistakes PHP developers often do - from wrong database drivers to too much transparency, read this list to find out what you shouldn't do

1. Using the mysql extension2. Not using PDO3. Not rewriting URLs4. Suppressing errors5. Assigning in Conditions
6. Being Too Transparent
7. Not Removing Development Configurations
No comment yet.
Scooped by nrip!

Is responsive design killing mobile?

Is responsive design killing mobile? | Code it |

Picture yourself at a work event. What are you wearing? What are you talking about? How loud are you talking? If you indulge at all, how much have you had to drink? Now picture yourself on a weekend trip with a group of friends.

We won’t go into details, but things look a little different, don’t they? We all change behaviors based on our environment. Physical location and surroundings have a lot to do with our mindset, and can influence how we do just about everything.

Behavior on a mobile phone vs. a desktop computer is no exception. Your physical location, state of mind and desired outcomes can be profoundly different depending on which device you are using, yet recent efforts to adapt desktop sites to mobile often ignore these differences and simply scale the online experience to a smaller screen. The result is a degraded end-user experience that may not meet the needs of a mobile environment, as well as disappointing outcomes for marketers and consumers.

A Brief Explanation: Responsive vs. Mobile Web

At the most basic level, it’s the difference between having one website or two. Responsive design allows the layout, scale and orientation of the desktop site to be adapted to a mobile viewing experience. The content served up to the user is the same as on a desktop site, and while they layout is organized to accommodate a smaller screen, it is important to remember that the integrity of the desktop site is intended to remain as true to form as possible and any changes to the desktop site will also affect the mobile site. Responsive design is concerned only with size and scale, not with the end user’s device type or presumed environment.

A mobile website is separate and distinct site from the desktop site, and must be maintained as such.  It is designed to cater to the mobile experience, and makes the assumption that the end user has different objectives than they would on a desktop site. This means the mobile site may not offer the full scale of content served up on the desktop version, and the options presented on the landing page may be refined accordingly.

Which is better? Well, it depends

Going back to the work party vs. weekend with friends example, it’s clear we adapt our actions according to our environment. However, the case can be made that there are some things we do no matter where we are. Here are some examples that seek to make the case that the suitability of a responsive or mobile site depends entirely on whether the people using your site are changing behavior based on their environment – or not.

Read more:

No comment yet.
Scooped by nrip!

Adding captions and subtitles to HTML5 video

Adding captions and subtitles to HTML5 video | Code it |
In other articles we looked at how to build a cross browser video player using the HTMLMediaElement and Window.fullScreen APIs, and also at how to style the player. This article will take the same player and show how to add captions and subtitles to it, using Web_Video_Text_Tracks_Format and the track element.

HTML5 and Video Captions

Before diving into how to add captions to the video player, there are a number of things that we will first mention, which you should be aware of before we start.

Captions versus subtitles

Captions and subtitles are not the same thing: they have significantly different audiences, and convey different information, and it is recommended that you read up on the differences if you are not sure what they are. They are however implemented in the same way technically, so the material in this article will apply to both.

For this article we will refer to the text tracks displayed as captions, as their content is aimed at hearing people who have difficulty understanding the language of the film, rather than deaf or hard-of-hearing people.

No comment yet.
Scooped by nrip!

PredictionIO raises $2.5M and wants to be MySQL for machine learning

PredictionIO raises $2.5M and wants to be MySQL for machine learning | Code it |

A startup called PredictionIO has raised $2.5 million in seed capital to help it try and make a business out of open source machine learning software. Unlike previous open source projects, though, PredictionIO is designed to be easy to get started with and use, even by developers who aren’t data scientists.

PredictionIO claims developers can be writing predictive models for their applications in minutes, primarily it seems around things such as recommendation and personalization. The software is available as a download or as cloud instance on Amazon Web Services. The company itself is part of three startup accelerators – MozillaWebFWD, 500Startups and StartX.

Machine learning is a potentially lucrative software market, and PredictionIO is tackling it by trying to split the difference between open-source and proprietary tools. Open source software is popular — in machine learning that includes projects such as Mahout, scikit-learn and, at some point, Oryx — but often hard to deploy and use. Commercial software is getting much better — with the release of products likeGraphLab Create and Microsoft’s new Azure machine learning service — but can be too much like a black box, PredictionIO contends.

No comment yet.
Scooped by nrip!

The Great Software Stagnation

Software is eating the world. But progress in software technology itself largely stalled around 1996.


Here’s what we had then, in chronological order:

LISP, Algol, Basic, APL, Unix, C, SQL, Oracle, Smalltalk, Windows, C++, LabView, HyperCard, Mathematica, Haskell, WWW, Python, Mosaic, Java, JavaScript, Ruby, Flash, Postgress.


Since 1996 we’ve gotten:

IntelliJ, Eclipse, ASP, Spring, Rails, Scala, AWS, Clojure, Heroku, V8, Go, Rust, React, Docker, Kubernetes, Wasm.


All of these latter technologies are useful incremental improvements on top of the foundational technologies that came before.


For example Rails was a great improvement in web application productivity, achieved by gluing together a bunch of existing technologies in a nicely structured way. But it didn’t invent anything fundamentally new. Likewise V8 made new applications possible by speeding up JavaScript, extending techniques invented in Smalltalk and Java.


But Since 1996 almost everything has been cleverly repackaging and re-engineering prior inventions. Or adding leaky layers to partially paper over problems below.


Nothing is obsoleted, and the teetering stack grows ever higher. Yes, there has been progress, but it is localized and tame. We seem to have lost the nerve to upset the status quo.


more at


No comment yet.
Scooped by nrip!

Whats new in PHP8 ?

Whats new in PHP8 ? | Code it |

PHP 8 , released on November 26, 2020 is a new major version. It introduces some breaking changes, as well as lots of new features and performance improvements.

Because of the breaking changes, there's a higher chance you'll need to make some changes in your code to get it running on PHP 8. If you've kept up to date with the latest releases though, the upgrade shouldn't be too hard, since most breaking changes were deprecated before in the 7.* versions.

Besides breaking changes, PHP 8 also brings a nice set of new features such as the JIT compiler, union types, attributes, and more.

The JIT Complier :) It is the first time that PHP version has a compiler – JIT – that caches a version of your already interpreted code and generates a machine code as an output (machine code is on with 0’s and 1’s only). The “just in time” compiler promises speed improvements for complex tasks and algorithms and opens new opportunities for the PHP language to broaden its reach and applications. 


ready to upgrade ->


No comment yet.
Scooped by nrip!

How to build your own Neural Network from scratch in Python

Most introductory texts to Neural Networks brings up brain analogies when describing them. Without delving into brain analogies, I find it easier to simply describe Neural Networks as a mathematical function that maps a given input to a desired output.

Neural Networks consist of the following components


  • An input layerx
  • An arbitrary amount of hidden layers
  • An output layerŷ
  • A set of weights and biases between each layer, W and b
  • A choice of activation function for each hidden layer, σ. In this tutorial, we’ll use a Sigmoid activation function.


The diagram above shows the architecture of a 2-layer Neural Network (note that the input layer is typically excluded when counting the number of layers in a Neural Network)


read the rest of this article with code examples at


No comment yet.
Scooped by nrip!

GitHub launches Actions, its workflow automation tool –

GitHub launches Actions, its workflow automation tool – | Code it |

For the longest time, GitHub was all about storing source code and sharing it either with the rest of the world or your colleagues. Today, the company, which is in the process of being acquired by Microsoft, is taking a step in a different but related direction by launching GitHub Actions. 


Actions allow developers to not just host code on the platform but also run it.  Something akin to a very flexible IFTTT for developers who want to automate their development workflows, whether that is sending notifications or building a full continuous integration and delivery pipeline.


read the rest of the article at


No comment yet.
Scooped by nrip!

Migrating your Development Environment from PHP 5+ to PHP 7

Migrating your Development Environment from PHP 5+ to PHP 7 | Code it |

Many PHP applications are still running on PHP 5.x, not ready to take full advantage of the awesome features that PHP 7 offers.


A lot of developers have not made the switch because of certain fears of compatibility issues, migration challenges and the strange awkward feeling that migrating will take away a big chunk of their time.


In this tutorial, you'll learn how to upgrade your PHP 5 application to PHP 7 starting from upgrading your development environment.


Mac OS X

If you are a fan of Homebrew, you can install PHP 7.0 via homebrew like so:

brew tap homebrew/dupes brew tap homebrew/versions brew tap homebrew/homebrew-php brew unlink php56 brew install php70

If you were using PHP 5.6, then you should unlink the old PHP by running brew unlink php56 else unlink whatever version is present before you go ahead to install PHP 7.0.

Another option is to install it via curl on your terminal like so:

curl -s | bash -s 7.0


If you are fan of WAMP or XAMPP, then you can just download the latest versions of the software. It comes packaged with PHP 7.0.

Download and install the last/latest version

Another option is to download the PHP 7.0 distribution for windows from


If you are running Ubuntu on your machine, especially around v14 and 15, you can install PHP 7.0 by running these commands:

sudo apt-get update sudo add-apt-repository ppa:ondrej/php sudo apt-get install -y php7.0-fpm php7.0-cli php7.0-curl php7.0-gd php7.0-intl php7.0-mysql

Note: You can check out how to install PHP 7 and Nginx here, and manually build memcached module for PHP 7.



read the steps for the other OS's as well as other details in the original article at


No comment yet.
Scooped by nrip!

The highly popular PHP 5.x branch will stop receiving security updates at the end of the year.

The highly popular PHP 5.x branch will stop receiving security updates at the end of the year. | Code it |

According to statistics from W3Techs, roughly 78.9 percent of all Internet sites today run on PHP.


But on December 31, 2018, security support for PHP 5.6.x will officially cease, marking the end of all support for any version of the ancient PHP 5.x branch.


This means that starting with next year, around 62 percent of all Internet sites still running a PHP 5.x version will stop receiving security updates for their server and website's underlying technology, exposing hundreds of millions of websites, if not more, to serious security risks.


If a hacker finds a vulnerability in PHP after the New Year, lots of sites and users would be at risk.


"This is a huge problem for the PHP ecosystem, While many feel that they can 'get away with' running PHP 5 in 2019, the simplest way to describe this choice is: Negligent."


"To be totally fair: It's likely that any major, mass-exploitable flaw in PHP 5.6 would also affect the newer versions of PHP," Arciszewski added.


"PHP 7.2 will get a patch from the PHP team, for free, in a timely manner; PHP 5.6 will only get one if you're paying for ongoing support from your OS vendor.


"If anyone finds themselves running PHP 5 after the end of the year, ask yourself: Do you feel lucky? Because I sure wouldn't."


more at



No comment yet.
Scooped by nrip!

What do they use to build AlternativeTo by the awesome guys at

All the tools, services and so on that we use when we develop AlternativeTo. AlternativeTo is built in ASP.NET using C# and is hosted on Azure.


We do use a lot of other services as well and you can read all about them below.

Let's start with the apps were we spend most of our time.


Microsoft Visual Studio
Visual Studio is the main IDE we use for coding, debugging and everything else that you do in a large app like this.


Like most other software developers nowdays we use GIT as our source control system and we host our code on GitHub. We also use their issue system to associate bugs with commits and so on.


AlternativeTo is a distributed team and since not two single people are based in the same city, this is our digital office.


We have a lot of plans for the site and this is currently where we keep them organized, or at least keep them.


Design & Frontend


Adobe Photoshop
A lot of the design elements on the site was done in Photoshop over the years, but lately we're leaning towards Sketch.


A modern way to create user interfaces and more. Most of the current design on the site was made with Sketch, the rest with Photoshop.


As the main web framework and scaffolding


To manage our font icons


Used for most of our Javascript on the site. Greatly simplifies interaction with the DOM and is an awesome open source project.


Used to "compile" Javascript and CSS and other continuous integration tasks.


To make our select boxes a bit smarter


DevOps, Reports and Stats


To test APIs, status codes, redirects and stuff like that.


Ghost Inspector
For tests of our UI, mostly use it to keep track of noindex / canonicals and other boring stuff that need to be correct.


To keep track of errors.


To speed up your requests, detect spam and some great HTTPS support.


To communicate between Slack, Trello and other services.


Google Analytics

We spend a lot of time trying to understand how the site works and how our users engage with the site, and we do most of that digging in Google Analytics.


Hosting & Libraries


Microsoft Azure
To host most of our servers, databases and so on.


As a cache for data that is accessed often.


Microsoft SQL Server
As the primary database for the site


As the server side package manager in Visual Studio


Cosmos DB
As a database for some new stuff like our content system


Microsoft IIS
As our web server locally


To handle everything we do with JSON.


To send emails when you register and so on.


To provide you with an incredible fast and accurate search

Admin & Other


A collaborative inbox and support chat.


iA Writer
A lot of blog posts, plans and other long.form texts have been typed up in this application, either on Mac OS X or on iOS.


The team often checks on apps using VirusTotal, to ensure they're safe for users.


Google AdSense
Our primary source of income.


Redis Desktop Manager
To work with our Redis cache locally


the original post at the blog:


No comment yet.
Scooped by nrip!

How to Use the Animation Inspector in Chrome Developer Tools

How to Use the Animation Inspector in Chrome Developer Tools | Code it |

Next time you’re putting together some CSS3-based animations you might find it helpful to jump into Chrome Developer Tools and take advantage of its animation inspection and tweaking features.


In this quick tip Kezz Bracey will give you a rundown of which animation dev tools are available in Chrome, how to access them, and what they can do for you.


see the article at



No comment yet.
Scooped by nrip!

Why Javascript Developers Should Get Excited About Object.observe()

Why Javascript Developers Should Get Excited About Object.observe() | Code it |

Nobody is more excited about the most recent version of Google's Chrome browser than JavaScript developers.

The latest version, Chrome 36, now includes a long awaited potential update to the JavaScript language. Called Object.observe(), it’s a low-level API (see our API explainer) that might solve one of the biggest problems in modern JavaScript development.

That problem: JavaScript developers have yet to find a satisfactory way to ensure that changes in a Web app's underlying data—say, as the result of user input—are reflected properly in the browser display. (This basically reflects the fact that JavaScript developers usually separate an app's data structures and its user interface into distinct program components. That keeps the coding simpler and cleaner, but also raises issues when the two components need to communicate.)

Various JavaScript frameworks offer workarounds that developers can use to get a WYSIWYG (What You See Is What You Get) display based on exactly what their app is doing. But these workarounds add more code that can slow the app down, alter the flow of its execution and potentially introduce new bugs.

Object.observe() would simplify the problem by creating a direct pipeline between an app's data structures and its display. It can do this more easily because it's an actual change baked into the structure of the JavaScript language itself, and not just a collection of bolted-on code.

Object.observe() is still unofficial; it's so far only incorporated into Chrome, which means developers who use it can't count on it working their apps working in others browsers such as Firefox or Apple's Safari. And it's not clear when—or even whether—other browser makers will jump on the Object.observe() bandwagon.

Still, the promise of Object.observe() is such that if it clears these hurdles, it could change the way JavaScript is coded forever.

more at

No comment yet.
Scooped by nrip!

How to Create and Share a Vagrant Base Box

How to Create and Share a Vagrant Base Box | Code it |

Interesting tools are emerging each day of the year, helping developers work faster, keeping them focused on the actual business values of the project.

One such tool is Vagrant, which is becoming one of the strongest helping hands for a developer, standardizing how development environments are created and managed.

In this article, George Fekete guides you through the process of manually building, configuring and hosting a Vagrant base box, so you can share it with the world.

No comment yet.
Scooped by nrip!

How developers can repurpose old web graphics for new mobile platforms

How developers can repurpose old web graphics for new mobile platforms | Code it |

Being stuck with a graphic that was created for a different purpose or platform can be discouraging. Knowing how to resize that graphic with sharper, crisper edges can make all the difference in the world.

The underlying technology behind mobile phones, tablets and even laptops and desktops is constantly changing. And changes to the screen sizes, orientations and resolutions of their screens can at times make a graphic artist go insane.

More often than not, the graphics that have been used in the past were created and sized for a specific purpose and just do not seem to look right when repurposed on a new device or platform. It is likely that many graphics were sized for the web and were right-sized and optimized for faster downloads of pages.

Unfortunately just resizing an image to a larger size does not always produce the results one expects. Sometimes you are fortunate enough to have all of the base elements used when the graphic was originally created and can ‘re-cut’ the graphic for a new purpose. Other times you may just have to start over from scratch or hire a professional designer.

There is, however, one technique that can work when all you want to do is simply repurpose a good design for a different use. If that is the case, then the following will help recycle your existing graphics used with older technologies, for new platforms that you would like to move to in the future.

Turn the image into a vector
Clean up the vector’s path
No comment yet.
Scooped by nrip!

Surprise! Microsoft wants its Android devices to run Windows Phone

Surprise! Microsoft wants its Android devices to run Windows Phone | Code it |

When Microsoft purchased Nokia it became a Android hardware manufacturer through the Nokia X line. But soon Microsoft will shift those devices to Windows Phone and the Lumia brand.

In the memos written by CEO Satyella Nadella and mobile device chief Stephen Elop announcing layoffs at Microsoft, both executives also announced a subtle change in strategy: Microsoft is planning to change the operating system of itsAndroid-powered Nokia X line to its own Windows Phone. Shocker.

According to Elop, Microsoft will continue “to sell and support existing Nokia X products” but plans to immediately shift “select future Nokia X designs and products to Windows Phone devices.” The Nokia X1, which was released earlier this year, was likely conceived and developed before Microsoft officially took over Nokia. The Nokia X2, its successor, was announced by Microsoft last month, and it will still run Nokia’s version of Android, but future low-cost devices most likely will not.

more at

No comment yet.