26 June 2018

Should You Buy a Full-Frame Camera? 4 Things to Consider Before You Do

Instagram now lets you 4-way group video chat as you browse


Instagram’s latest assault on Snapchat, FaceTime, and Houseparty launches today. TechCrunch scooped back in March that Instagram would launch video calling, and the feature was officially announced in at F8 in May. Now it’s actually rolling out to everyone on iOS and Android, allowing up to four friends to group video call together through Instagram Direct.

With the feed, Stories, messaging, Live, IGTV, and now video calling, Instagram is hoping to become a one-stop-shop for its 1 billion users’ social needs. This massive expansion in functionality over the past two years is paying off according to SimilarWeb, which estimates that the average US user has gone from spending 29 minutes per day on the app in September 2017 to 55 minutes today. More time spent means more potential ad views and revenue for the Facebook subsidiary that a Bloomberg analyst just valued at $100 billion after it was bought for less than $1 billion in 2012.

One cool feature of Instagram Video Calling is that you can minimize the window and bounce around the rest of Instagram without ending the call. That opens new opportunities for co-browsing with friends as if you were hanging out together. More friends can join an Instagram call in progress, though you can mute them if you don’t want to get more call invites. You’re allowed to call anyone you can Direct message by hitting the video button in a chat, and blocked people can’t call you.

Here’s how Instagram’s group video calling stacks up to the alternatives:

  • Instagram – 4-way plus simultaneous browsing
  • Snapchat – 16-way
  • FaceTime – 32-way (coming in iOS 12 this fall)
  • Houseparty – 8-way per room with limitless parallel rooms
  • Facebook Messenger – 6-way with up to 50 people listening via audio

Instagram is also rolling out two more features promised at F8. The Explore page will now be segmented to show a variety of topic channels that reveal associated content below. Previously, Explore’s 200 million daily users just saw a random mish-mash of popular content related to their interests, with just a single “Videos You Might Like” section separated.

Now users will see a horizontal tray of channels atop Explore, including an algorithmically personalized For You collection, plus ones like Art, Beauty, Sports, and Fashion depending on what content you regularly interact with. Users can swipe between the categories to browse, and then scroll up to view more posts from any they enjoy. A list of sub-hashtags appears when you open a category, like #MoGraph (motion graphics) or #Typeface when you open art. And if you’re sick of seeing a category, you can mute it. Strangely, Instagram has stripped Stories out of Explore entirely, but when asked, the team told us it plans to bring Stories back in the near future.

The enhanced Explore page could make it easier for people to discover new creators. Growing the audience of these content makers is critical to Instagram as it strives to be their favorite app amongst competition. Snapchat lacks a dedicated Explore section or other fan base-growing opportunities, which has alienated some creators, while the new Instagram topic channels is reminiscent of YouTube’s mobile Trending page.

Instagram’s new Explore Channels (left) vs YouTube’s Trending page (right)

Finally, Instagram is rolling out Camera Effects design by partners, starting with Ariana Grande, BuzzFeed, Liz Koshy, Baby Ariel, and the NBA. If you’re following these accounts, you’ll see their effect in the Stories camera, and you can hit Try It On if you spot a friend using one you like. This opens the door to accounts all offering their own augmented reality and 2D filters without the Stories camera becoming overstuffed with lenses you don’t care about.

Instagram’s new partner-made camera effects

What’s peculiar is that all of these features are designed to boost the amount of time you spend on Instagram just as it’s preparing to launch a Usage Insights dashboard for tracking if you’re becoming addicted to the app. At least the video calling and camera effects promote active usage, but Explore definitely encourages passive consumption that research shows can be unhealthy.

Therein lies the rub of Instagram’s mission and business model with its commitment to user wellbeing. Despite CEO Kevin Systrom’s stated intention that  “any time [spent on his app] should be positive and intentional“ and that he wants Instagram to “be part of the solution”, the company earns more by keeping people glued to the screen rather than present in their lives.


Read Full Article

Instagram now lets you 4-way group video chat as you browse


Instagram’s latest assault on Snapchat, FaceTime, and Houseparty launches today. TechCrunch scooped back in March that Instagram would launch video calling, and the feature was officially announced in at F8 in May. Now it’s actually rolling out to everyone on iOS and Android, allowing up to four friends to group video call together through Instagram Direct.

With the feed, Stories, messaging, Live, IGTV, and now video calling, Instagram is hoping to become a one-stop-shop for its 1 billion users’ social needs. This massive expansion in functionality over the past two years is paying off according to SimilarWeb, which estimates that the average US user has gone from spending 29 minutes per day on the app in September 2017 to 55 minutes today. More time spent means more potential ad views and revenue for the Facebook subsidiary that a Bloomberg analyst just valued at $100 billion after it was bought for less than $1 billion in 2012.

One cool feature of Instagram Video Calling is that you can minimize the window and bounce around the rest of Instagram without ending the call. That opens new opportunities for co-browsing with friends as if you were hanging out together. It also makes it more functional than Bonfire. However, Bonfire allows for unlimited number of video chat partners across different rooms, while Snapchat launched group video calling with up to 16 friends in April. Facebook seems to have the technology to allow more chat partners, though, since Messenger can do six-way calls with up to 50 friends listening in over audio. More friends can join an Instagram call in progress, though you can mute them if you don’t want to get more call invites. You’re allowed to call anyone you can Direct message by hitting the video button in a chat, and blocked people can’t call you.

Instagram is also rolling out two more features promised at F8. The Explore page will now be segmented to show a variety of topic channels that reveal associated content below. Previously, Explore’s 200 million daily users just saw a random mish-mash of popular content related to their interests, with just a single “Videos You Might Like” section separated.

Now users will see a horizontal tray of channels atop Explore, including an algorithmically personalized For You collection, plus ones like Art, Beauty, Sports, and Fashion depending on what content you regularly interact with. Users can swipe between the categories to browse, and then scroll up to view more posts from any they enjoy. A list of sub-hashtags appears when you open a category, like #MoGraph (motion graphics) or #Typeface when you open art. And if you’re sick of seeing a category, you can mute it. Strangely, Instagram has stripped Stories out of Explore entirely, but when asked, the team told us it plans to bring Stories back in the near future.

The enhanced Explore page could make it easier for people to discover new creators. Growing the audience of these content makers is critical to Instagram as it strives to be their favorite app amongst competition. Snapchat lacks a dedicated Explore section or other fan base-growing opportunities, which has alienated some creators, while the new Instagram topic channels is reminiscent of YouTube’s mobile Trending page.

Instagram’s new Explore Channels (left) vs YouTube’s Trending page (right)

Finally, Instagram is rolling out Camera Effects design by partners, starting with Ariana Grande, BuzzFeed, Liz Koshy, Baby Ariel, and the NBA. If you’re following these accounts, you’ll see their effect in the Stories camera, and you can hit Try It On if you spot a friend using one you like. This opens the door to accounts all offering their own augmented reality and 2D filters without the Stories camera becoming overstuffed with lenses you don’t care about.

Instagram’s new partner-made camera effects

What’s peculiar is that all of these features are designed to boost the amount of time you spend on Instagram just as it’s preparing to launch a Usage Insights dashboard for tracking if you’re becoming addicted to the app. At least the video calling and camera effects promote active usage, but Explore definitely encourages passive consumption that research shows can be unhealthy.

Therein lies the rub of Instagram’s mission and business model with its commitment to user wellbeing. Despite CEO Kevin Systrom’s stated intention that  “any time [spent on his app] should be positive and intentional“ and that he wants Instagram to “be part of the solution”, the company earns more by keeping people glued to the screen rather than present in their lives.


Read Full Article

The new Google Maps with personalized recommendations is now live


At its I/O developer conference last month, Google previewed a major update to Google Maps that promised to bring personalized restaurant recommendations and more to the company’s mapping tool. Today, many of these new features started rolling out to Google Maps users.

The core Google Maps experience for getting directions hasn’t changed, of course, but the app now features a new ‘explore’ tab that lets you learn more about what’s happening around you, as well as a ‘for you’ tab that provides you with recommendations for restaurants, lists of up and coming venues, and the ability to ‘follow’ neighborhoods and get updates when there are new restaurants and cafes that you would probably like. The main difference between the Explore and For You tabs is that the former is all about giving you recommendations for right now, while the latter is more about planning ahead and keeping tabs on an area in the long run.

While most of the other features are rolling out to all users worldwide, the new ‘for you’ tab and the content in it is only available in the U.S., U.K., Canada, Australia and Japan for now. Content in this tab is still a bit limited, too, but Google promises that it’ll ramp up content over the course of this week.

Both of the new tabs feature plenty of new features. There is the ‘foodie list,’ for example, which shows you the hottest new restaurants in an area. And if you feel completist, Google will keep track of which one of these places you’ve been to and which ones you still have to visit. Like before, the Explore tab also features automatically curated lists of good places to go to for lunch, with kids or for a romantic dinner. It’s not just about food and coffee (or tea), though, those lists also include other activities and Google Maps can now also highlight local events.

With this launch, Google is also releasing its new ‘Your Match’ scores, which assigns a numeric rating to each restaurant or bar, depending on your previous choices and ratings. The idea here is that while aggregate ratings are often useful, your individual taste often differs from the masses. With this new score, Google tries to account for this. To improve these recommendations, you can now also explicitly tell Maps which cuisines and restaurants you like.

It’s worth noting that there are still some features that Google promised at I/O that are not part of this release. Group planning, for example, which allows you to create a list of potential meet-up spots and lets your friends vote on them, is not part of this release.

[gallery ids="1663429,1663430,1663431"]

The updated Google Maps for iOS and Android is now available in the Play Store and App Store.

If you’d like to read more about Google’s rationale for many of these changes, also take a look at our in-depth interview with Sophia Lin, Google’s senior product manager on the Google Maps team, from I/O.


Read Full Article

The new Google Maps with personalized recommendations is now live


At its I/O developer conference last month, Google previewed a major update to Google Maps that promised to bring personalized restaurant recommendations and more to the company’s mapping tool. Today, many of these new features started rolling out to Google Maps users.

The core Google Maps experience for getting directions hasn’t changed, of course, but the app now features a new ‘explore’ tab that lets you learn more about what’s happening around you, as well as a ‘for you’ tab that provides you with recommendations for restaurants, lists of up and coming venues, and the ability to ‘follow’ neighborhoods and get updates when there are new restaurants and cafes that you would probably like. The main difference between the Explore and For You tabs is that the former is all about giving you recommendations for right now, while the latter is more about planning ahead and keeping tabs on an area in the long run.

While most of the other features are rolling out to all users worldwide, the new ‘for you’ tab and the content in it is only available in the U.S., U.K., Canada, Australia and Japan for now. Content in this tab is still a bit limited, too, but Google promises that it’ll ramp up content over the course of this week.

Both of the new tabs feature plenty of new features. There is the ‘foodie list,’ for example, which shows you the hottest new restaurants in an area. And if you feel completist, Google will keep track of which one of these places you’ve been to and which ones you still have to visit. Like before, the Explore tab also features automatically curated lists of good places to go to for lunch, with kids or for a romantic dinner. It’s not just about food and coffee (or tea), though, those lists also include other activities and Google Maps can now also highlight local events.

With this launch, Google is also releasing its new ‘Your Match’ scores, which assigns a numeric rating to each restaurant or bar, depending on your previous choices and ratings. The idea here is that while aggregate ratings are often useful, your individual taste often differs from the masses. With this new score, Google tries to account for this. To improve these recommendations, you can now also explicitly tell Maps which cuisines and restaurants you like.

It’s worth noting that there are still some features that Google promised at I/O that are not part of this release. Group planning, for example, which allows you to create a list of potential meet-up spots and lets your friends vote on them, is not part of this release.

[gallery ids="1663429,1663430,1663431"]

The updated Google Maps for iOS and Android is now available in the Play Store and App Store.

If you’d like to read more about Google’s rationale for many of these changes, also take a look at our in-depth interview with Sophia Lin, Google’s senior product manager on the Google Maps team, from I/O.


Read Full Article

A Beginner’s Guide to Understanding Python Lambda Functions


lambda-functions-python

Lambdas in Python are one of the most useful, important, and interesting features to know about. Unfortunately, they’re also easy to misunderstand and get wrong.

In this article, we’re going to explain everything you need to know about these mysterious functions, how to use them, and why they’re useful.

Before diving into these practical examples, you may wish to set up a Python virtual environment. If you don’t even want to do that, then you should at least try these examples with an interactive online Python shell.

What’s a Lambda in Python?

A lambda is simply a way to define a function in Python. They are sometimes known as “lambda operators” or “lambda functions”.

If you’ve used Python before, you’ve probably defined your functions using the def keyword, and it’s worked fine for you thus far. So why is there another way to do the same thing?

The difference is that lambda functions are anonymous. Meaning, they are functions that don’t need to be named. They are used to create small, one-off functions in cases where a “real” function would be too big and bulky.

Lambdas return a function object, which can be assigned to a variable. Lambdas can have any number of arguments, but they can only have one expression. You cannot call other functions inside lambdas.

The most common use for lambda functions is in code that requires a simple one-line function, where it would be overkill to write a complete normal function. This is covered in greater detail below, under “What About Map, Filter, and Reduce?”.

How to Use Lambdas in Python

Before looking at a lambda function, let’s look at a super basic function defined the “traditional” way:

def add_five(number):
  return number + 5
 
print(add_five(number=4))

how to use lamba functions in python

This function is very basic, but it serves to illustrates lambdas. Yours may be more complex than this. This function adds five to any number passed to it through the number parameter.

Here’s how it looks as a lambda function:

add_five = lambda number: number + 5 
 
print(add_five(number=4))

how to use lamba functions in python

Rather than using def, the word lambda is used. No brackets are required, but any words following the lambda keyword are created as parameters. The colon is used to separate the parameters and the expression. In this case, the expression is number + 5.

There’s no need to use the return keyword—the lambda does this for you automatically.

Here’s how you’d create a lambda function with two arguments:

add_numbers_and_five = lambda number1, number2: number1 + number2 + 5 
 
print(add_numbers_and_five(number1=4, number2=3))

how to use lamba functions in python

If you’re still unsure as to the point of lambdas, the next section will dive in and help you see the light.

Python Lambdas With Map, Filter, and Reduce

The Python core library has three methods called map, reduce, and filter. These methods are possibly the best reasons to use lambda functions.

The map function expects two arguments: a function and a list. It takes that function and applies it to every element in the list, returning the list of modified elements as a map object. The list function is used to convert the resulting map object back into a list again.

Here’s how to use map without a lambda:

list1 = [2, 4, 6, 8]
print(list1)

def add_five(number):
  return number + 5
 
new_list = list(map(add_five, list1))

print(new_list)

how to use lamba functions in python

This map function is quite handy, but it could be better. the add_five function is passed in as an argument, but what if you don’t want to create a function every time you use map? You can use a lambda instead!

Here’s what that same code looks like, only with the function replaced by a lambda:

list1 = [2, 4, 6, 8]
print(list1)
 
new_list = list(map(lambda x: x + 5, list1))

print(new_list)

how to use lamba functions in python

As you can see, the whole add_five function is no longer required. Instead, the lambda function is used to keep things neat.

With the filter function, the process is much the same. Filter takes a function and applies it to every elemen in a list and created a new list with only the elements that caused the function to return True.

First, without lambdas:

numbers = [1, 4, 5, 10, 20, 30]
print(numbers)

def greater_than_ten_func(number):
  if number > 10:
    return True
  else:
    return False

new_numbers = list(filter(greater_than_ten_func, numbers))
 
print(new_numbers)

how to use lamba functions in python

There’s nothing wrong with this code, but it’s getting a bit long. Let’s see how many lines a lambda can remove:

numbers = [1, 4, 5, 10, 20, 30]
print(numbers)

new_numbers = list(filter(lambda x: x > 10, numbers))
print(new_numbers)

how to use lamba functions in python

The lambda function has replaced the need for the whole greater_than_ten_func! And it’s done it in five simple words. This is why lambdas are powerful: they reduce clutter for simple tasks.

Finally, let’s look at reduce. Reduce is another cool Python function. It applies a rolling calculation to all items in a list. You could use this to tally up a sum total, or multiply all numbers together:

from functools import reduce

numbers = [10, 20, 30, 40]
print(numbers)

def summer(a, b):
  return a + b
 
result = reduce(summer, numbers)
print(result)

how to use lamba functions in python

This example needs to import reduce from the functools module, but don’t worry, the functools module is part of the Python core library.

The story is very much the same with a lambda, there’s no need for a function:

from functools import reduce

numbers = [10, 20, 30, 40]
print(numbers)
 
result = reduce(lambda a, b: a + b, numbers)
print(result)

how to use lamba functions in python

Things to Watch Out For With Python Lambdas

These examples have shown just how easy lambda functions are, along with map, filter, and reduce, from the Python core library. Still, there are a few uses where lambda functions don’t help.

If you’re doing anything more than a basic task, or want to call other methods, use a normal function. Lambdas are great for one off, anonymous functions, but they must only have a single expression. If your lambda starts looking like a regular expression, then it’s probably time to refactor in to a dedicated method.

For more tips, check our guide to object-oriented programming in Python and check out our FAQ guide for Python beginners.

Read the full article: A Beginner’s Guide to Understanding Python Lambda Functions


Read Full Article

Google Cloud will launch its Los Angeles region in July


It’s no secret that Google has long planned to open a cloud region in Los Angeles. The company has long said that a second region on the U.S. West Coast was in the works, after all. What we didn’t know for sure was when this new region would go live. But as Google announced today, the new Los Angeles cloud region will go live in July, making it the company’s fifth region in the U.S.

During an event in Los Angeles today, Google specifically positioned this region as the ideal region for the media and entertainment industry in the area. “The LA region will provide our media and entertainment customers with fast, scalable compute resources, so visual effects and animation studios can spend less time waiting on renders, and more time bringing their creative visions to life,” Google notes in its announcement today.

But beyond this focus on entertainment, it’s worth noting that this new region now also gives every company that best on the Google Cloud platform a second West Coast option besides its Oregon region. That’s not what Google is focusing on today, though. The company’s event and blog posts all focus on the various rendering tools like Zync Render, which Google acquired back in 2014, and Anvato, a video streaming and monetization platform it acquired in 2016.

It’s worth noting that Microsoft Azure already offers a region in Southern California, though AWS does not.


Read Full Article

With Cloud Filestore, the Google Cloud gets a new storage option


Google is giving developers a new storage option in its cloud. Cloud Filestore, which will launch into beta next month, essentially offers a fully managed network attached storage (NAS) service in the cloud. This means that companies can now easily run applications that need a traditional file system interface on the Google Cloud Platform.

Traditionally, developers who wanted access to a standard file system over the kind of object storage and database options that Google already offered had to rig up a file server with a persistent disk. Filestore does away with all of this and simply allows Google Cloud users to spin up storage as needed.

The promise of Filestore is that it offers high throughput, low latency and high IOPS. The service will come in two tiers: premium and standard. The premium tier will cost $0.30 per GB and month and promises a throughput speed of 700 MB/s and 30,000 IOPS, no matter the storage capacity. Standard tier Filestore storage will cost $0.20 per GB and month, but performance scales with capacity and doesn’t hit peak performance until you store more than 10TB of data in Filestore.

Google launched Filestore at an event in Los Angeles that mostly focused on the entertainment and media industry. There are plenty of enterprise applications in those verticals that need a shared filesystem, but the same can be said for many other industries that rely on similar enterprise applications.

The Filestore beta will launch next month. Since it’s still in beta, Google isn’t making any uptime promises right now and there is no ETA for when the service will come out of beta.


Read Full Article

How to Build a Commodore 64 Mini Using a Raspberry Pi


commodore-64-mini-raspi

Looking for some 8-bit gaming action? Can’t afford the amazing prices of original Commodore 64 games on eBay? Not keen on the C64 Mini? That’s okay!

You can always build your own compact Commodore 64 using nothing more than an affordable Raspberry Pi. Here’s everything you need to know about how to do it.

Why Not Use a C64 Mini?

Released in early 2018, the C64 Mini is a compact computer that successfully emulates the original Commodore 64. Unfortunately, it’s not without its bugs, and shipping at $100, that’s not ideal. It’s difficult to add your own game ROMs to the C64 Mini, and it ships without an AC adaptor (which seems unforgivable these days).

C64 games like Turrican can run on the Raspberry Pi with VICE64

The C64 Mini also ships with a joystick, which doubles as a controller to navigate through the system, launching games, creating saves, and so on. Unfortunately, it’s not a great joystick.

While it might be ideal for hardcore enthusiasts, there is a chance the C64 Mini could give a newcomer a very bad impression of 8-bit gaming. Fortunately, there’s an alternative: your Raspberry Pi.

Use Any Raspberry Pi Model You Like!

Often in projects like this, you’re limited by the hardware constraints of the Raspberry Pi. For instance, running Sega Dreamcast games on the Raspberry Pi requires a Raspberry Pi 2 or later.

Happily, you can run Commodore 64 emulators on almost any model of Raspberry Pi that you can get your hands on. Whether an original Raspberry Pi A, B, or Zero, any Pi is suitable for emulating a Commodore 64!

While you can install RetroPie and configure the VICE64 emulator, you’ll enjoy more authentic results with a dedicated system. Two examples are available:

  • Combian64: a Raspbian-based system that boots directly into the VICE 64 emulator. This is suitable for almost all Raspberry Pi models, and was produced by Carmelo Maiolino.
  • C64 by Pi Lizard: based on Raspbian Lite, this has screen resolution tweaks, and is intended for the Raspberry Pi 3. Like Combian64, this boots directly into the VICE64 environment.

The option you choose depends on the model of Raspberry Pi you’re using. We’re using C64 by Pi Lizard for this tutorial, but the instructions for Combian 64 won’t be too different.

Along with your Raspberry Pi, you’ll need a microSD card, HDMI cable, and reliable power supply. You should also have a USB keyboard handy (the mouse isn’t really that important, although it should work), and a USB joystick. Games for the C64 were either keyboard or joystick based, so gamepads and Xbox controllers are less suitable.

Select a Suitable Raspberry Pi Case

In addition, you might like to fit your Raspberry Pi into a suitable, C64-inspired case. Several of these are available, but they’re not the cheapest options, thanks to the complexities of the design.

For instance, a NES-style case for a Raspberry Pi is far simpler there’s no keyboard, after all. You’ll find a C64-based case on eBay, for instance, but you could save a lot of money using a standard Raspberry Pi case.

There’s also the option of 3D printing your own case, using the design by Freakdude that you can download from Thingiverse.

Grab a C64 Image for Raspberry Pi

Get started by choosing your preferred C64 disk image, and burning it to your microSD card. You’ll need a card with at least 2GB capacity for this, although the more space, the more games you’re be able to squeeze in.

The best tool to use for this is Ether, which you’ll find at etcher.io. Download the tool (it’s available for Windows, macOS, and Linux), install and run it, then use Select image to find the downloaded IMG file, and Select drive to choose your formatted microSD card (this should be detected automatically). With everything selected, click Flash to burn the disk image to the microSD card.

Other options are available for installing disk images on your Raspberry Pi.

With the disk image written to your microSD, eject the disk safely from your PC, insert it in your Raspberry Pi, and boot up. Welcome to your new Commodore 64!

Adding Games to the Pi 64

Ready to start playing? You’ll need some game ROMs to enjoy games on your custom built mini C64. ROMs are in the format of D64 or T64, depending on whether they were created from disk or cassette tape (some tape ROMs use the TAP file extension).

Add games to your Raspberry Pi Commodore 64 emulator via SFTP

We cannot give you any links to finding ROMs online. You’ll have to use your favorite search engine to search for Commodore 64 ROM files. Note that you shouldn’t use any ROMs that you don’t own the physical media for.

Once you have the ROMs, you have three options to add games to your Raspberry Pi. We’re assuming that you’ve downloaded them first to your PC. They should be stored in the /software directory.

  1. Copy game ROMs via USB stick.
  2. Remove the microSD card and copy the ROMs into the /software/ directory in the /root/ partition. You’ll need to use Linux (or a Linux virtual machine) for this approach.
  3. Using an FTP client with SFTP functionality, you’ll be able to remotely connect to the Raspberry Pi, and upload the games to the /software/ directory. Before you do this, eject the microSD card from your Raspberry Pi and create a blank text file in the /boot/ directory called ssh, which will enable SSH connectivity. Use the default Raspbian username (“pi”) and password (“raspberry”) to log in.

Play C64 Games on Your Raspberry Pi

With your game library uploaded, it’s time to play. As with the original Commodore 64, all you need to do is insert the game, then input the load command. To access the VICE menu, press F12 on the keyboard, or Start on a game controller.

Attach a disk or tape image for loading

Here, you can browse through various options, from attaching game images (in tape or disk format) to getting online via Ethernet. It’s also possible to create screenshots, record audio, and save or load game snapshots. While in the old days, it was mostly impossible to save your C64 games, you can now easily save progress as a snapshot, and return to it later!

Autostart game ROMs in VICE64 on the Raspberry Pi

For simple Commodore 64 gaming, however, you won’t need to make any significant changes to the configuration. To load games once the image is attached, use Autostart image. Tape-based ROMs will take longer to load than disk-based ROMs, so D64 files should load quicker than T64 files.

Note: Alternatively, if you want a full nostalgic C64 experience, connect a keyboard and type LOAD for T64 files, and LOAD “*”,8,1 for D64 files. Press Enter on the keyboard when you’re ready.

Moments later, you’ll be rocking some 8-bit gaming retro magic on your dedicated C64 minicomputer. Don’t get lost in that massive game library! When you’re done, hit Start, then find Quit Emulator in the menu. Select this, and the C64 emulator will end, and the Raspberry Pi will power off.

Looking for a different platform to emulate? Don’t worry, you’re not limited by the C64. Many retro games consoles can also be emulated on a Raspberry Pi.

Read the full article: How to Build a Commodore 64 Mini Using a Raspberry Pi


Read Full Article

Pared picks up $10M to help restaurant employees live an on-demand life


On the busiest nights, a restaurant can’t afford to even lose a dishwasher to getting sick or not being around — or simply ghosting on the company — and end up frustrating the whole experience for the rest of the staff and restaurant goers.

It’s a problem that Will Pacio was acutely familiar with during his time at Spice Kit, and it’s why he and Dave Lu — who didn’t really have much experience other than delivering Chinese food in high school, but wanted to get into the industry — started Pared. It essentially serves as an on-demand tool for restaurant workers, who might find themselves already working across multiple different jobs or multiple different restaurants and are looking for a lifestyle over which they have some more control. The company said it has raised a $10 million financing round led by CRV, with existing investors Uncork Capital and True Ventures also participating. CRV partner Saar Gur is joining the company’s board of directors.

“Even if I go [to Craigslist], it’ll take four to six weeks to get someone to show up,” Wu said. “You hire them, you train them, and then they don’t show up to work the very first day. Even if I paid overtime, I don’t have enough employees to cover the shifts. For [Pacio] it was a nightmare, and I just want to be able to tap an app to get that kid from Safeway across the street who knows how to make sandwiches and make them for me.”

The app largely focuses on back-of-the-house operations like line cooks, prep cooks, and dishwashers, though it could theoretically extend to any part of the restaurant experience. Restaurants go to the app and say they are looking for what the app calls a ‘Pro’ in whatever role they need, and are able to book the employee right away for the slot they have in their schedule. It might come at a slight premium over the typical hire, but restaurants are already willing to pay overtime in order to cover those gaps and keep things moving smoothly, Wu said.

For employees, it’s a pretty similar experience — they see a job posted on the app, with a time slot, and they make themselves available for an hourly wage. The second benefit, Wu said, is that they can start to slowly make a name for themselves if they are able to prove out their skills and move up the ranks at any of those restaurants. The culinary community is a small one, he said, and it offers a lot of room to start building up a reputation as an exceptional chef or just finally get a first shot at a sauté position in the kitchen after working at the back of the house. That, too, might be part of the appeal of jumping on a service like Pared rather than just driving for Uber.

“On our platform, every shift and rating you get, every connection you get in the industry — and it’s a very tight network — you build up your own reputation or identity,” Wu said. “We’re helping them build up, it’s more like a race to the top than a race to the bottom. They start off as a prep cook, and they start getting offers for line cook positions. We might have videos for learning to do this or that. They can work their way up to build that reputation. It’s all about reputation, it’s about people you trust.”

And like Uber, that flexibility is one of the more critical selling points of the application. A line cook might want to spend some time in New York to learn the scene there, and with an app like Pared, they can get access to some potential openings at restaurants in the area. As their experience — and their reputation — builds up over time, Wu hopes Pared gets known as a launching point for many careers, in addition to just offering restaurant workers a more flexible lifestyle.

There are certainly larger platforms that aren’t just targeting the restaurant ecosystem, and look to be a more global hub for hourly workers. Shiftgig, which raised $20 million last year, is one interpretation of that idea. But by offering a more curated and focused experience — one for which a kind of aspirational chef might keep gravitating back toward because they hope to one day end up running their own kitchen — can help build up that reputation for having a reliable workforce that any restaurant can use.


Read Full Article

AngelSense Is the Perfect Tracker for Parents of Special Needs Children

5 Thunderbolt RAID Systems to Serve Your External Data Storage Needs

How to Use Python List Comprehensions (And When Not to Use Them)


python-list-comprehension

You may have heard of Python’s list comprehension. Maybe it’s even something you’ve used without really understanding. Now is the time to learn, as we cover everything you need to know about list comprehension in Python.

Before getting started, it’s worth refreshing yourself on how arrays and lists work in Python and how to use Python dictionaries.

What Is Python List Comprehension?

List comprehension sounds complex but it really isn’t. In Python, it’s simply a quick way to filter or refine a list based on some criteria.

It saves you having to write several lines of code (especially if you’re in a loop already), and it keeps the readability of your code neat.

Be careful, however, as list comprehension is not always the answer. It’s easy to get carried away and write complex comprehensions that are tough to read. Sometimes writing more code is better, especially if it helps readability. Stick to simple tasks, and keep code to a single responsibility.

How to Use List Comprehensions in Python

Note: These examples all use Python 3.6. If you’re not sure of the differences between Python 3 and Python 2, then make sure you read our Python FAQ, where we cover this question and more.

Consider this bit of code that copies an array and turns each letter in that array into an uppercase. It does so by looping through each item in the array:

letters = ['a', 'b', 'c', 'd']
print(letters)

upper_letters = []
for letter in letters:
  result = letter.upper()
  upper_letters.append(result)

print(upper_letters)

Learn Python list comprehension

Now here’s the same exact logic, except done in a single line of code using a basic Python list comprehension:

letters = ['a', 'b', 'c', 'd']
print(letters)

upper_letters = [x.upper() for x in letters]

print(upper_letters)

Learn Python list comprehension

As you can see, the result is exactly the same, but the process involves significantly more code without list comprehension.

Let’s break this simple example down.

This example creates a list called letters. This stores the lowercase letters “a”, “b”, “c”, and “d”. Supposing you want all these list elements to be uppercase? Well, without list comprehension, you have to create a new list to store the result (called upper_letters), loop over every element in the letters list, convert each letter (and store it in result—optional but good practice), and then append the uppercase letter to the new list. What a lot of work!

The list comprehension here is almost exactly equivalent to the loop alternative. It effectively says “for every letter in the letters list, convert them to uppercase, and return the result as a new list.”

List comprehension can only work on lists, and must return a new list. Let’s dig deeper.

There are three parts to a list comprehension (we’ll cover the third part below). List comprehensions must start and end with square brackets ([ and ]). This is how it was designed, and lets Python know that you’ll be working with a list.

Inside the square brackets, you need to start with the result. This is what you want to do with each list element.

In the example above, the following code converts each element (referenced by the variable name x) to upper case by using the upper() method, which is part of the Python core library:

[x.upper() # will not run, only half the comprehension at this point

Next, you need to tell Python which list to work on, and assign each individual element to a variable. This is exactly the same as the for loop in the long winded example:

for x in letters

Every time the loop goes over the list, the value of x will change to whatever the current element is. It will start off as “a”, and then “b”, and so on.

If you put it all together (and assign it to a variable called upper_letters), you’ll be done:

upper_letters = [x.upper() for x in letters]

Now, upper_letters will contain a list of uppercase letters, starting at “A”, and then “B” and so on.

The Third Part of List Comprehension in Python

As we mentioned above, there’s a third part to list comprehension.

Once you’ve done the two steps above, you can include an optional condition. This is like using an if statement to say “make me a new list, based on this old list, but only include elements which meet my criteria”.

Here’s what it looks like:

ages = [1, 34, 5, 7, 3, 57, 356]
print(ages)

old_ages = [x for x in ages if x > 10]
print(old_ages)

Learn Python list comprehension

This example uses a new list called ages. The old_ages list is assembled using a list comprehension. The if condition on the end means that only list elements which meet the criteria are inserted into the new list. In this example, any ages greater than ten are allowed.

When Not to Use Python List Comprehensions

List comprehension is amazing once you’ve got the hang of it, but it’s not useful in every circumstance. You probably shouldn’t use it when you need more than one condition:

old_ages = [x for x in ages if x > 10 and x < 100 and x is not None]

This code works, but it’s starting to get long and confusing. Similarly, anything more than a simple function call may not work. In this example, you’ll get an error:

letters = ['a', 'b', 'c', 'd', 2]
print(letters)

upper_letters = [x.upper() for x in letters]
print(upper_letters)

Learn Python list comprehension

This is perfectly valid code, but as you cannot uppercase a number, it won’t work. This is one case when the longer loop is actually preferable, as you’ll be able to do some exception handling:

letters = ['a', 'b', 'c', 'd', 1]
print(letters)

upper_letters = []

for letter in letters:
  try:
    result = letter.upper()
    upper_letters.append(result)
  except AttributeError:
    pass # do nothing

print(upper_letters)

Learn Python list comprehension

Start Putting Python List Comprehensions to Use

Now that you know just how easy list comprehension is in Python, there’s no reason not to be using it. Just remember to keep it simple, and consider the readability above all else.

Maybe you’ll control an Arduino with Python, or what about a DIY Python network security camera?

Read the full article: How to Use Python List Comprehensions (And When Not to Use Them)


Read Full Article

August can now generate smart entry codes for Airbnb guests


August Lock is getting into the homesharing industry, making the process of checking in an Airbnb guest a bit easier.

Airbnb has done what it can over the past few months to make checking in plain and simple. For example, the company built out a new tool that lets hosts spell out check-in instructions within the app, all in a simple flow, to make sure guests have all the info they need at their fingertips.

But that hasn’t solved the biggest problem of all: the key.

For one, people don’t often have a lot of interest in meeting strangers, especially when they’re fresh off a plane or road trip. Secondly, it’s annoying to block out that time (sometimes getting off work) to go hand off a key to an Airbnb guest. And then there’s the matter of getting keys copied or re-tooling your smart lock to temporarily offer a stranger access.

That’s where August comes in to play.

August now let’s Airbnb and Homeaway hosts link their accounts to August. When a guest books at their home, August will generate a smart code that lasts for the duration of the stay and no longer, letting the guest easily check-in and come and go without the host having to babysit the process.

Guests will receive their pin code and instructions via email.

Hosts simply need an August Smart Lock and Smart Keypad to start letting technology do the heavy lifting. And, in fact, August is running a deal right now for 25 percent off the Smarter Hosting Bundle, which includes an August Smart Lock, August Connect Wi-Fi Bridge and August Smart Keypad.

This, coupled with other startup services like Handy, should make becoming an Airbnb host as simple as tapping a few buttons.


Read Full Article

AAXA P2-B Review: Finally, a Pico Projector With an HDMI Port

Aclima sucks in $24M to scale its air quality mapping platform


Aclima, a San Francisco-based company which builds Internet-connected air quality sensors and runs a software platform to analyze the extracted intel, has closed a $24 million Series A to grow the business including by expanding its headcount and securing more fleet partnerships to build out the reach and depth of its pollution maps.

The Series A is led by Social Capital which is joining the board. Also participating in the round: The Schmidt Family Foundation, Emerson Collective, Radicle Impact, Rethink Impact, Plum Alley, Kapor Capital and First Philippine Holdings.

Three years ago Aclima came out of stealth, detailing a collaboration with Google on mapping air quality in its offices and also outdoors, by putting sensors on StreetView cars.

Though it has actually been working on the core problem of environmental sensing and intelligence for about a decade at this point, according to co-founder Davida Herzl.

“What we’ve really been doing over the course of the last few years is solving the really difficult technical challenges in generating this kind of data. Which is a revolution of air quality and climate change emissions data that hasn’t existed before,” she tells TechCrunch.

“Last year we announced the results of our state wide demonstration project in California where we mapped the Bay Area, the Central Valley, Los Angeles. And really demonstrated the power of the data to drive new science, decision making across the private and public sector.”

Also last year it published a study in collaboration with the University of Texas showing that pollution is hyperlocal — thereby supporting its thesis that effective air quality mapping requires dense networks of sensors if you’re going to truly reflect the variable reality on the ground.

“You can have the best air quality and the worst air quality on the same street,” says Herzl. “And that really gives us a new view — a new understanding of emissions but actually demonstrated the need for hyperlocal measurement to protect human health but also to manage those emissions.

“That data set has been applied across a variety of scientific research including studies that really showed the linkages between hyperlocal data and cardiovascular risk. In LA our black carbon data was used to support increased filtration in schools to protect school children.”

“Our technology is really a proof point for emerging and new legislation in California that’s going to require community based monitoring across the entire state,” she adds. “So all of that work in California has really demonstrated the power of our platform — and that has really set us up to scale, and the funding round is going to enable us to take this to a lot more cities and regions and users.”

Asked about potential international expansion — given the presence of strategic investors from south east Asia backing the round — Herzl says Aclima has had a “global view” for the business from the beginning, even while much of its early work has focused on California, adding: “We definitely have global ambitions and we will be making more announcements about that soon.”

Its strategy for growing the reach and depth of its air quality maps is focused on increasing its partnerships with fleets — so there’s a slight irony there given the vehicles being repurposed as air quality sensing nodes might themselves be contributing to the problem (Herzl sidestepped a question of whether Uber might be an interesting fleet partner for it, given the company’s current attempts to reinvent itself as a socially responsible corporate — including encouraging its drivers to go electric).

“Our mapping capabilities are amplified through our partnerships with fleets,” she says, pointing to Google’s StreetView cars as one current example (though this is not an exclusive partnership arrangement; a London air quality mapping project involving StreetView cars which was announced earlier this month is using hardware from a rival UK air quality sensor company, called Air Monitors, for example).

But flush with fresh Series A funding Aclima will be working on getting its kit on board more fleets — relying on third parties to build out the utility of its software platform for policymakers and communities.

“There’s a number of fleets that we are going to be speaking about our partnerships with but our platform can be integrated with any fleet type and we believe that is an incredible advantage and position for the company in really achieving our vision of creating a global platform for environmental intelligence to help cities and entire countries really manage climate risk at a scale that really hasn’t been possible before,” she adds.

“Our technology provides 100,000x greater spacial resolution than existing approaches and we do it at 100-1,000x cost reduction so our vision is to be the GPS of the environment — a new layer of environmental awareness and intelligence that really informs day to day decisions.

“We’re really excited because it’s taken really years of work. I incorporated Aclima 10 years ago and started really working on the technology around 2010. So this has taken… a tremendous amount of technical development and scientific rigor with partners… to really have the technology at a place where it’s really set up to scale.”

It finances (or part financies) the deployment of its sensors on the vehicles of fleet partners — with Aclima’s business model focused on monetizing the interpretation of the data provided by its SaaS platform. So a chunk of the Series A will be going to help pay for more sensor rollouts.

In terms of what fleet partners get back from agreeing for their vehicles to become mobile air quality sensing nodes, Herzl says it’s dependent on the partner. And Aclima’s isn’t naming any additional names on that front yet.

“It’s specific to each fleet. But I can say that in the case of Google we’re working with Google Earth outreach and the team at StreetView… to really reflect their commitment to sustainability but also to expand access to this kind of information,” she says of the perks for fleets, adding: “We’ll be talking more about that as we make announcement about our other partners.”

The Series A financing will also go on funding continued product development, with Aclima hoping to keep adding to the tally of pollutants it can identify and map — building on a list which includes the likes of CO2, methane and particulate matter.

“We have a very ambitious roadmap. And our roadmap is expansive — ultimately our vision is to make the invisible visible, across all of the pollutants and factors in the invisible layer of air that supports life. We want to make all of that visible — that’s our long term vision,” she says.

“Today we’re measuring all of the core gaseous pollutants that are regulated as well as the core climate change gases… We are not only deploying and expanding our platform’s availability but in our R&D efforts investing in next generation sensing technologies, whether it’s the tiniest PM2.5 sensor in the world to on our roadmap really having the ability to speciate COC [chlorinated organic compounds].

“We can’t do that today but are working on it and that is an area that is really important for specific communities but for industry and for policy makers as well.”

A key part of its ongoing engineering work is focused on shrinking certain sensing technologies — both in size and cost. As that’s the key to the sought for ubiquity, says Herzl.

“There’s a lot of hard work happening there to shrink [sensors],” she notes. “We’re talking about sensors that are the size of a thumb tack. Traditional technologies for this are very large, very difficult to deploy… so it’s not that capabilities don’t exist today but we’re working on shrinking those capabilities down into really, really tiny components so that we can achieve ubiquity… You have to shrink down the size but also reduce the cost so that you can deploy thousands, millions of these things.”

Commenting on the funding round in a supporting statement, Jay Zaveri, partner at Social Capital, added: “Aclima has successfully opened up an entirely new market domain with their innovative approach, tackling one of the biggest global challenges of our time. With a proven ability to quantify emissions and human exposure to pollution at global resolutions previously impossible, Aclima creates enormous opportunities for industry, cities and society.”


Read Full Article