Wednesday, 2 May 2018

Eufy Smart Scale Review: An Inexpensive Upgrade to Your Health Tracking Regimen

If you just want to weigh yourself, you can use any old scale on the market.

Click Here to Continue Reading

Office 365 ProPlus Users Basically Already Have Office 2019

Office 2019 launches this year, but Office 365 Pro Plus users shouldn’t expect a bunch of new features.

A Japanese Researcher Already Made a Nintendo Labo-Controlled Wheelchair

When we said that the best Ni…

Click Here to Continue Reading

Hulu Will Offer Offline Viewing (Eventually)

It’s official: someday you’ll be able to watch Hulu videos on a plane, or anywhere else you don’t have internet access.

How to Check Which Version of macOS You’re Using

Apple releases new versions of the macOS operating system about once per year. Here’s how to check which release of the macOS operating system is installed on your MacBook, iMac, Mac Mini, or Mac Pro.

The Best White Noise Machines to Help You Sleep Peacefully

Whether you want to block out noises from outside your bedroom, calm your mind, or both, there’s a white noise machine for you.

Click Here to Continue Reading

What is RCS, the Successor to SMS?

SMS, or Short Messaging Service, has been around for a long time. And like most tech things that have been around for a long time, it’s due to get replaced. That’s where RCS comes in.

How to Make Outlook for Mac Show Pictures by Default

For reasons I cannot fully understand, I decided to use Outlook on my Mac. That’s when I discovered that Outlook was making me click “Download Pictures” on every single email, which is really annoying. Here’s how to make Outlook download the stupid pictures automatically.

The Best Ways to Make Free Conference Calls

You can now host your own conference calls more easily than ever before. Whether you’re working from home, own a small business, or just want to stay in touch with friends and family, there are dozens of free services available to you.

How to Avoid Drowning in DSRs in a Data Lake

With GDPR enforcement rapidly approaching (May 25, 2018), many companies are still trying to figure out how to comply.  A big pain point, particularly for companies who utilize data lakes to store vast amounts of data, is how to comply with one of the main requirements under the GDPR – data subject requests, also known as “DSRs”.

What is a DSR?

One of the most operationally significant parts of the GDPR for companies is the data subject request.  The GDPR provides all European data subjects (that is, any individual person located in Europe) with a set of enumerated rights related to their personal data including the right to:

  • access (i.e., the right to know what personal data a controller or processor has about the individual),
  • rectification (i.e., the right to update incorrect personal data),
  • erasure (i.e., the right to be forgotten), and
  • portability (i.e., the right to export personal data in a machine-readable format).

Companies have, unless the request is “complex” or “numerous”, thirty days from receipt of the data subject request to comply with the request (keeping in mind any applicable exceptions).

So what’s the big deal?

Finding data in a data lake is hard; being sure that you’ve found all data about a particular individual is very hard. And many data lakes do not even enable users to perform “delete” operations, even once the data is located, so actually removing it may be practically impossible. In the best case, finding and removing such data is computationally difficult, expensive, and time consuming.  And if a company receives more than just a few data subject requests in a short period of time, the resources spent to comply with the requests could be significant. Further, failure to comply with the GDPR could result in significant penalties, potentially as high as €20 million (or even more – up to 4% of a company’s global annual revenues).

So that sounds bad. Is there anything that can be done?

Fortunately, Databricks offers a solution. Enter Databricks Delta, a unified data management system built into the Databricks platform, that brings data reliability and performance optimizations to cloud data lakes.

Databricks Delta’s structured data management system adds transactional capabilities to your data lake that enable you to easily and quickly search, modify, and clean your data using standard SQL DML statements (e.g. DELETE, UPDATE, MERGE INTO). To accomplish this, first ingest your raw data into Delta tables which adds metadata to your files. Once ingested, you can easily search and modify individual records within your Delta tables to meet DSR obligations. The final step is to make Delta your single source of truth by erasing any underlying raw data. This removes any lingering records from your raw data sets. We suggest setting up a retention policy with AWS or Azure of thirty days or less to automatically remove raw data so that no further action is needed to delete the raw data to meet DSR response timelines under the GDPR.

Can you provide an example of how this works?

Let’s say your organization received a DSR to delete information related to Justin Olsson (jdo@databricks.com). After ingesting your raw data into Delta tables, Databricks Delta would enable you to find and delete information related to user jdo@databricks.com by running two commands:

(1) DELETE FROM data WHERE email LIKE 'jdo@databricks.com';
(2) VACUUM data;

The first command identifies records that have the string “jdo@databricks.com” stored in the column email, accounting for varying case (e.g., JDO@databricks.com would also match), and deletes the data containing these records, rewriting the respective underlying files with the user’s data removed. The second command cleans up the Delta table, removing any stale records that have been logically deleted and those that are outside of the default retention period (e.g., 7 days).

After running these commands, and waiting for your default retention period to delete the underlying raw files, you would be able to state that you had removed records relating to the user jdo@databricks.com from your data lake.

Okay, that sounds great , but if I put my data in a Delta table, won’t I be locked in?  What if I want to go somewhere else?

Nope! Databricks Delta is architected with portability in mind. Databricks Delta uses an open file format (parquet) and you can at any time (either if you ever decide to stop using Delta or if you need to output data to a system that cannot read Delta tables) quickly and easily convert your data back into a format that can be read by other tools.  While doing so, particularly on an ongoing basis, would leave you with the additional DSR obligation of deleting or exporting any personal data that might be contained in the data that was moved out of Databricks Delta, it too will have benefitted from flowing through Databricks Delta, as it will be in a much more structured format, dramatically simplifying that process as well.

Learn more and watch a live demo

Join our webinar, Is Your Data Lake GDPR Ready? How to Avoid Drowning in Data Requests, on May 9 for a live a demo and tips for overcoming the challenges of DSRs in a big data world.

This webinar will cover:

  • The GDPR requirements of data subject requests
  • The challenges big data and data lakes create for organizations
  • How Databricks improves data lake management and makes it possible to surgically find and modify or remove individual records
  • Best practices for GDPR data governance
  • Live demo on how to easily fulfill data requests with Databricks

Register to attend this session.

--

Try Databricks for free. Get started today.

The post How to Avoid Drowning in DSRs in a Data Lake appeared first on Databricks.

How I Use Slack as My Own Personal Assistant

Slack is most known as a glorified chatroom app for workplaces, but it’s also a great tool for individuals. Here’s how I use Slack as my own personal assistant of sorts.

Tuesday, 1 May 2018

The Oculus Go Is a $200 Self-Contained VR Headset, Shipping Today

The brand new Oculus Go headset, announced at Facebook’s F8 conference today, is a self-contained VR headset that doesn’t require…

Click Here to Continue Reading

Facebook Announces a Dating App, Group Video Chats in Instagram and Whatsapp, And More

Facebook is bringing group video chat to Snapchat and Whatsapps, and is also bringing Snapchat-style video filters to Instagram and Facebook Messenger.

Geek Trivia: The First McDonald’s Happy Meal Movie Tie-In Was For Which Movie?

Think you know the answer? Click through to see if you're right!

The Best Mechanical Keyboards For Every Budget

Interested in trying out a mechanical keyboard but don’t know here to start?

Click Here to Continue Reading

ESPN Is Bringing SportsCenter to Twitter (Sort Of)

Twitter is pushing into video, hard, and ESPN is launching a new show on the social media site: SportsCenter Live.

How to Find Contacts in the New Gmail

The new Gmail started rolling out last week, and it’s awesome. But many people are asking the same question: where did Contacts go?

The US Public Domain Hasn’t Expanded Since 1998. That Changes Next Year.

Thousands of books, films, and music recordings from 1923 will enter the US public domain next year, meaning you’ll be able to download and share them freely.

Welcome Google Summer of Code 2018 students!

Jenkins GSoC

On behalf of the Jenkins GSoC team and mentors, I would like to welcome Shenyu Zheng, Udara De Silva, Pham Vu Tuan and Abhishek Gautam. They will be working on Google Summer of Code projects in the Jenkins organization, and they have already done some contributions.

This year we have the following projects:

During next 4 weeks project teams will be reaching out to potential stakeholders in order to establish connections and to get comments regarding their project designs. If you are interested in the projects, please join discussions in the Developer mailing lists and project meetings once they get scheduled. Please also expect expect more detailed blogposts about the projects soon.

If you are interested to know more about GSoC in Jenkins, you can find information, timeline and communication channels here.

How To Replace And Re-Solder A Mechanical Keyboard Switch

Mechanical keyboards are generally touchier than their counterparts, and occasionally a switch will falter. Here’s how to replace it without ditching the keyboard. It takes some tools and a little know-how, but you can absolutely do it.

The Best Anti-Theft Backpacks For Keeping Your Tech Safe

A good backpack will hold all your stuff. A great backpack will keep your stuff out of thieves’ hands.

Click Here to Continue Reading

The Best Web Browsers for Android

Your phone probably already has Chrome on it, but that’s not the be all, end all when it comes to web browsers for Android. There are, in fact, dozens of alternatives out there. Here’s a look at the best of the bunch.

How To Get Verified On Facebook

Verification—that hallowed blue tick—is a pretty big deal on Twitter, but it’s also a thing on Facebook. Let’s have a look at how you can (try to) get verified on Facebook.

Seven of the Best Hidden Features in Android

Android is loaded full of features—many of which aren’t completely obvious or are possibly even hidden behind “secret” menus. Here’s where to find some of the most useful features in Android that you may not be using.

Pentagon to beat Uber, Tesla in race over self-driving vehicles

Technology and auto companies including Alphabet Inc.’s Waymo unit and General Motors Co. are racing to develop autonomous vehicles to deploy in ride-hailing fleets.

Microsoft Just Removed HomeGroups From Windows 10

Microsoft is killing off the entire notion of HomeGroups, and removing a few other features from Windows 10.

What is the Latest Version of Windows 10?

The latest version of Windows 10 is the April 2018 Update, version “1803,” which was released on April 30, 2018. Microsoft releases new major updates every six months.

Using new core APIs with the Beta annotation

This sort of slid under the radar in the middle of some bigger changes for the JEP-202 reference implementation, so I wanted to call it out now. Arguably this could deserve a retroactive JEP, though I would rather fold it into a JEP for JENKINS-49651 (see below).

As of Jenkins 2.118, or plugin parent POM 3.7, you can mark any Java member (class, method, constructor, field, or I suppose also interface, enum, or annotation) with API visibility (protected or public) with an annotation:

@Restricted(Beta.class)

The idea is to announce to potential users of the member that the API may still be in flux and only code prepared to keep up should be using it. For an example, 2.118 added a VirtualFile.toExternalURL() method that is being implemented in artifact-manager-s3 and (pending some PR merges) called in copyartifact and workflow-basic-steps. We do not necessarily want this to be called yet by unknown parties out there in the Jenkins ecosystem. To enforce that, any attempt to call or implement toExternalURL will produce a build failure, unless you add this property to your plugin POM, as these plugins have done:

<useBeta>true</useBeta>

Why? Because there is a chance the design is wrong and it might need to be changed—perhaps some upcoming bug fix would demand a boolean parameter be added, for example.

Under the conventional notion of Jenkins API deprecation and compatibility policy, once an API like this makes it into a release version, that is it—we might mark it @Deprecated but we need to maintain compatibility indefinitely, and find some way to migrate existing implementations / call sites.

With the @Beta annotation, that promise is not being made. If it needs a boolean parameter for some reason, that will be added and those three plugins updated to match; we are not going to bother retaining the original overload and somehow delegating to the new one. This simplification of the developer workflow is important to the use cases of Essentials (JEP-3xx), and I would expect the useBeta mark to become widespread among plugins included in Essentials. Such as the situation where one team needs to feel comfortable refactoring code under its aegis freely, and the refactored result should be deliverable as a unit to production via the Evergreen distribution system.

So that leaves two important questions:

First, is the annotation permanent, and if not, when should it be removed? I do not think there is any hard policy, but the intention is that it should be removed once the API is in more or less widespread use and has held up. For this example, if people start using S3 artifacts, and especially if someone successfully writes an implementation of artifact storage in Azure that uses the API, the concept will have been reasonably proven. At that point we want the API to be used wherever it would make sense, and if there is some very belated realization that the design is not quite right, we accept the burden of deprecating the original and migrating callers compatibly.

Second, it is fine and well to say that someone changing the signature of a beta toExternalURL is on the hook to update the three plugins using it, but what if a Jenkins admin (not running Essentials, for shame) upgrades to (say) Jenkins 2.125 with the new signature but declines to accept the updates to those plugins (say, workflow-basic-steps 2.9) which adapt to the change? It is not enough to say that it is their fault for holding back on the updates arbitrarily; the plugin manager offers you updates but does nothing to tell you when they are required, so suddenly throwing NoSuchMethodError is not a helpful response.

The solution needs to be ironed out, but my expectation is to use JENKINS-49651 for this. For example, workflow-basic-steps 2.8, using toExternalURL(), would have declared itself compatible with Jenkins-Version: 2.118, and thus implicitly anything newer. The developer doing the refactoring would also amend some 2.125 (and newer) core metadata to say that it conflicts with anything older than the 2.9 release of the plugin. The plugin manager would therefore block the 2.8 plugin from even being loaded on the 2.125 core; the admin would need to update before using it. In the case of an incompatible change made to a plugin API, rather than a core API, the UX is a little smoother since the plugin manager could just refuse to let you update one without the other.


If you’re a plugin or core developer who is interested in using the @Beta annotations, or have questions about our motiviations, please join the discussion on this mailing list thread.

How to Use Focus Assist (Do Not Disturb Mode) on Windows 10

Windows 10’s “Focus Assist” feature is a “Do Not Disturb” mode that hides notifications. Windows automatically activates it when you’re playing PC games or mirroring your display—and you can have Windows automatically activate it on a schedule, too.

The Best Android Phones You Can Buy, 2018 Edition

There are, quite literally, hundreds of Android phones out there, so picking the best one can be a challenge.

Click Here to Continue Reading