Can't wait to see this film!
Ubuntu 17.10 comes with python3 3.6.3 installed by default but not pip and pipenv. We can install install pip systemwide and pipenv into the user local bin so we can use all the convenience when working with our python projects:
wget https://bootstrap.pypa.io/ get-pip.py -O /tmp/get-pip.py sudo python3 /tmp/get-pip.py pip3 install --user pipenv echo "PATH=$HOME/.local/bin:$PATH" >> ~/.profile source ~/.profile
Sources: Installing Python 3 on Linux; pip installation; Installing pipenv; How to permanently set PATH on Linux
Update 9 Nov 2017: replaced curl with wget, thanks Peter
I'm working on a side project where I am broadcasting an OGG Vorbis stream using Icecast. Google Chrome played the stream, and so did VLC, but WinAmp was unable to. It connected to the stream with an HTTP 200 status but could not interpret it.
As it turns out WinAmp requires the mount point to have a file extension for it to detect the stream correctly, so updating the mount point to stream.ogg instead of stream in the icecast configuration did the job.
The Nintendo Switch is redefining gaming by adapting to the players environment. Unfortunately, it is widely misunderstood. It provides fun when used alone, with others, or with other Switch owners; in the living room, on the bus, at a desk. It an adaptive console, not a portable one. Any game that can be played like this is going to be a liberating experience, being optimised for how we live and can be played whenever we feel like.
So far, it seems the Nintendo Switch is widely misunderstood, even by game developers, reviewers and gamers alike. This is not surprising because Nintendo attempts to achieve something that no other gaming device has ever tried: gaming anywhere.
The moment everything fell in place for me was when I stopped thinking about Nintendo Switch as a portable console, but as an adaptive console.This explains why it does not become loads more powerful when docked, because that would favour playing on the TV over all the other ways. Nintendo has gone through amazing lengths to let you play together with other Switch owners even without a WiFi network, because it wants gaming everywhere.
A game that is not fun on the TV or playing with others on the same switch is limiting the switch experience and I think we will see a lot of games that are compromised in some way as game developers are getting to grips with the platforms adaptability.
The Switch is a careful balance between offline and online play, individual versus group play, and a study about where gaming can fit in our lives.
Cory Doctorow over at BoingBoing.net writes:
Theresa May says there should be no "means of communication" which "we cannot read" -- and no doubt many in her party will agree with her, politically. But if they understood the technology, they would be shocked to their boots.
Perhaps we should no longer assume that politicians 'do not understand the internet' and assume they are asking for changes in the full understanding that they don't achieve the goal for which they're introduced.
As long as the situation that's being created is more favourable for them than the current one it's a net benefit.
Short-term politics is the biggest threat to UK society at the moment and the current government is particularly good at it.
After quickstarting a Lektor site, a next obvious thing to do is to add a feed to the site's blog. Fortunately, Lektor has a growing ecosystem of plugins, one of them creates atom feeds.
The plugin to install is lektor-atom, and is installed via the terminal:
lektor plugin add lektor-atom@0.2 lektor build
This adds a reference to the myproject.lektorproject file with the plugin and installs the plugin into the lektor pipeline.
However, notice that after building the site no feed is generated! This is because no feeds have been setup yet.
Create a configs/atom.ini containing the following lines (full documentation)
[blog] name = My Blog feed source_path = /blog item_model = blog-post url_path = /blog/feed.xml
Change the url_path to suit your preferences. Trying to build now would result in an error: E blog/feed.xml (RuntimeError: To use absolute URLs you need to configure the URL in the project config.)
To resolve the build process myproject.lektorproject must be updated with two lines within the project section to indicate the site's live URL and an absolute URL style:
[project] name = My Project url = https://myproject.com [packages] lektor-atom = 0.2
The site can then build and the resulting feed can be accesssed from https://
Watching Trump’s presser, I had a feeling I’d seen it all before?—?while covering Vladimir Putin’s annual news conferences.
Source: A message to my doomed colleagues in the American media – Medium
New controls are arguably an improvement, but data collection remains mandatory for most.
Google Chrome is too dominating, this is not good for the web. So I'm switching back to Firefox, but it can be pretty ugly by default in places.
I like to apply the following tweaks to make it pretty again:
Edit userChrome.css to make style changes to the Firefox UI. My Profile is located at %appdata%\Mozilla\Firefox\Profiles\<Gibberish>
, use the previous link to find the location on your system. Inside your profile create a chrome
folder and inside that create a userChrome.css
. Add the following line:
#urlbar { font-size: 13px; }
The possibilities are endless but this does the trick for me. Restart Firefox after saving the file.
Right click on any of the toolbar buttons > Customize...
to bring up the Customize Firefox screen. Remove unused buttons and the search box (search via the address bar instead) by dragging them to the Additional Tools and Features panel -- or the hamburger menu panel to access them with a click.
Firefox tabs have this rounded look to them, which I find displeasing: install the Squared Australis Tabs addon to add square corners instead.
Did you know you can access the menu bar by pressing the Alt
key on your keyboard? The menu bar is visible by default but it is not frequently accessed, so press Alt+V
or bring up the View
menu bar menu and untick the Menu Bar
and optionally the Bookmark Toolbar
items.
You can blank out the Name of a bookmark to have it display just the icon in the toolbar, which tidies up those frequently accessed sites.
Amazon Go, shopping without checkouts:
Amazon Go is a new kind of store with no checkout required. We created the world’s most advanced shopping technology so you never have to wait in line. With our Just Walk Out Shopping experience, simply use the Amazon Go app to enter the store, take the products you want, and go!
With the amount of recorded prior art they will find it difficult to pantent the Just Walk Out technology ;-)
Just came across an interesting perspective on frameworks by Timothy Perrett:
It is imperative to understand that the need for composability in our software tools is an absolute requirement. If we as an industry have any hope of not repeating ourselves time and time again, we have to change our ways.
I definately agree that we're doomed to keep making the same mistakes if we're building on top of frameworks and then switching them out for a different one, which I hadn't considered before.
If you've just upgraded to Sierra and previously had Homebrew installed you may find that it no longer works because of the stricter security feature in macOS. In order to get Homebrew back up and running you need to execute the following commands in your terminal (thanks thehitmaniptf):
sudo chown -R $(whoami) /usr/local
xcode-select --install
The first command simply gives your local user account ownership of /usr/local (where brew installs things). The second command updates the Xcode command line tools without which Homebrew cannot compile packages.
Once this is done you can successfully update Homebrew as normal, and diagnose any remaining issues:
brew update
brew doctor
After running this you will receive instructions on how to restore the permissions on /usr/local as after updating Homebrew no longer will use this path.
Update 6th Nov, 2016: When using cask you might get told to update the cask room location:
sudo mv /opt/homebrew-cask/Caskroom /usr/local
I think we have stumbled upon the reason why there are no new Macs. Apple was wasting resources on the car.
Apple Inc. has drastically scaled back its automotive ambitions, leading to hundreds of job cuts and a new direction that, for now, no longer includes building its own car, according to people familiar with the project.
[..]
Zadesky handed the reins to his boss, Dan Riccio, adding to responsibilities that already included engineering annual iPhone, iPad, and Mac refreshes.
Source: How Apple Scaled Back Its Titanic Plan to Take on Detroit - Bloomberg
Dropbox was using a sql attack on the tcc database to circumvent Apple’s authorization policy
Another issue like this and a lot of people will switch to iCloud Drive.
I was looking to setup a Flickr account and noticed that it requires you to enter a mobile phone number to sign up. I prefer not to disclose this information to third parties so I looked for a solution. Unfortunatley, a lot of information is out of date as Yahoo! (which owns Flickr, and which is the service you sign up to so you can login) turned off third party signups back in 2014. However I found a way...
To complete this process you will need to have a non-yahoo email address. I recommend you try Hover and register your own domain with email (such as your surname), so that you will never have to change it when your email provider closes up shop.
Now you can use the credentials to sign into Flickr!
Two technologies that I have can really recommend you try out - Lektor and Cloud9 - can be used together to start a static site or blog in a matter of minutes. If you want to try out the power of Lektor without leaving a trace on your machine then follow this quick setup.
Lektor is a flexible and powerful static content management system for building complex and beautiful websites out of flat files — for people who do not want to make a compromise between a CMS and a static blog engine.
Cloud9 combines a powerful online code editor with a full Ubuntu workspace in the cloud.
Because every Cloud9 workspace is also a Docker container, you have full access to a ubuntu system with terminal access. We can use this to install a development Lektor install and work on our static website as follows:
ex50
foldercurl -sf https:// www.getlektor.com/ install.sh | sh
lektor quickstart
{
"cmd" : ["lektor", "server", "-p", "8080", "-h", "0.0.0.0"],
"info" : "Started $project_path",
"working_dir": "/home/ubuntu/workspace/myproject"
}
That's all there is to it, you can continue with the Lektor Quickstart instructions.
I wrote this little script and thought it might be useful for others. WorkLog.py allows you to keep track of what you are working on by writing a timestamped message to a CSV file.
It turns out it helps me stay in tack during a long day of work.
I've put the latest code on GitHub
A great little bit of python code. It requires Python 3. Then just run the file.
I've been using Traktor for years now as my deejaying solution and broadcasting tool. The one missing feature on the broadcasting side is that it can only stream directly to Icecast servers, lacking the ability to stream to SHOUTcast based servers. Most servers use the SHOUTcast streaming protocol which grew popular through the MP3 movement back around the turn of the century. We will setup a transcoding link to enable streaming to SHOUTcast servers.
This guide will focus on OS X but on a general level is also applicable to Windows users.
This replaces my previous guide at https://
We will need the do the following things:
Also useful is to keep the SHOUTcast stream (remote stream) details to connect to at hand (host, port, password).
Homebrew is a terminal package manager to add / remove / update OS X software and compile it from source code for us, so we don't have to.
Homebrew installs the stuff you need that Apple didn’t.
To install, follow the directions on http://
/usr/bin/ruby -e "$(curl -fsSL https:// raw.githubusercontent.com/ Homebrew/ install/ master/ install)"
Follow any instructions about the Xcode commandline tools.
After everything is setup you can run brew update
to update your formulae, brew upgrade
to upgrade to their latest versions, and brew doctor
to diagnose any issues with your particular installation. Keep the terminal open for the next step.
Icecast is a streaming media server which [...] can be used to create an Internet radio station or a privately running jukebox and many things in between.
We will setup the local streaming server so that we can connect Traktor and the transcoder to it.
In the terminal window you left open, run brew install icecast
.
If I remember correctly, everything should go smoothly and before long you'll get a message saying it's successfully installed.
To keep the configuration files we are about to create nicely together, create a broadcast folder somewhere (I used ~/Music/Broadcast).
I have prepared a very simple configuration file for you, download it from https://icecast.xml
in the broadcast folder you just created).
/traktor.ogg
, on port 8000
, on localhost
(your own machine).You won't have to change the contents of this file, apart from the passwords.
This configuration creates a mount point on http://
In the terminal window, in your broadcast folder, run icecast -c icecast.xml
. It should show a few warnings but no errors, and your local streaming server is now running. Stop it now by pressing ctrl+c
.
Our flagship is liquidsoap, a swiss-army knife for multimedia streaming, notably used for netradios and webtvs. Liquidsoap is a powerful and flexible language for describing your streams. It offers a rich collection of operators that you can combine at will, giving you more power than you need for creating or transforming streams. But liquidsoap is still very light and easy to use, in the Unix tradition of simple strong components working together.
We will install the program and setup a flow (configuration) to connect to the local streaming server, and broadcast it to the remote stream.
It should have been simple to install using brew, but unfortunately it was not. After several days of debugging here is a working set of instructions I produced.
In the terminal window you left open, we will run the following commands:
brew tap drfill/liquidsoap
-- This enabled homebrew to install it.brew install --env=std liquidsoap --with-shout
-- this installs LiquidSoap using the standard build environment with shoutcast supportGrab a drink. After a while hopefully all works fine. I noticed that LiquidSoap is now recommending OPAM to install it so you could try that if this doesn't work for you. (http://
As before, I have created a very simple flow. You will need to setup one flow per destination stream so if you play at multiple radio stations / SecondLife clubs then you will need multiple flows.
Download it from https://example.liq
in the broadcast folder).
This time you have to edit it, to add the remote stream details. Change the following lines to suit your purposes:
output_host = "example.com"
output_port = 8124
output_pass = "mypassword"
The configuration above is for broadcasting to a SHOUTcast server at http://mypassword
). Leave the rest of the file alone or make a copy and start experimenting LATER, see http://
In the terminal window, in your broadcast folder, run liquidsoap example.liq
. It will start showing a lot of messages, and because you are not currently broadcasting also some errors. Stop it now by pressing ctrl+c
.
Start Traktor and open the Preferences menu item. Open the Broadcasting tab.
Use the following information to point to the local streaming server:
Server settings:
localhost
8000
traktor.ogg
hackme
(but you changed this, right)You can enter whatever you like in the Metadata Settings.
In Traktor, click the broadcast button (the little attenna). It will flash because the local streaming server isn't running and therefore Traktor cannot connect to it. Whenever Icecast is running but the button is still flashing, check that the password and other connection details match.
For now, click it again to stop broadcasting.
Before you start streaming:
When you start streaming:
When you are finished
I hope this helps anyone having trouble deejaying online, I enjoy it very much and if you'd like to listen to deep house / electronica, please listen to my mixes.