Speech to Text All the Things!

It’s time to get out of the nineteen hundreds people, you don’t have to type any more. Just speak and the text will appear on your apple device. 

This works for all text input because it is connected to the keyboard. 

This means that you don’t have to type notes, texts, social media posts, lists or any text input ever again on an Apple device. 

Here is the support link on the apple site to down load and install the package for speech to text input. It requires a small download and then maps to the “fn + fn” shortcut.

https://support.apple.com/en-us/HT202584

Speech to Text All the Things!

Track your tracking.

There is a lot of talk about personal data being worth so much to advertisers these days. I recently found links that show what is being tracked for your account.

This one has activity for searches on the internet, maps, and assistant devices.

MyActivity

I also found that your mail data can be searched and any receipt emails are tracked here.

Purchases

 

 

JetBrains blogs

Minimalist Software Engineering

Do you approach software engineering as a minimalist?

The fastest code is the code that doesn’t run at all.

Running fewer SQL queries is better than running more queries.

Fewer features means less complexity.

Fewer libraries means less complexity.

Fewer tools means less complexity.

Complexity costs time.

Complexity costs money.

Doing nothing is better than doing something useless.

How To Create A New Composer PHP Package

  1. git init demo-composer-package
  2. cd demo-composer-package
  3. composer init
  4. composer install
  5. composer validate
  6. Follow the guide for your php version https://phpunit.de/getting-started-with-phpunit.htm
Use this autoload functionality in your composer.json
"autoload": {
    "classmap": [
        "src/"
    ]
},

It makes your /src classes available in your tests directory so you don’t have to require them.

Instructional Video Table of Contents (YouTube)

Today I found this link to the  YouTube Iframe API Reference.  I find this interesting because I think that adding something like a table of contents to a video could be super helpful when if you want to reference the video. For example with instructional videos, a table of contents could provide an overview of video segments you might be interested in. It would let you quickly jump around instead of manually searching the video to find the point that you are interested in.
I used to go to user group meetings to find out the latest and greatest in programming and software development.  I could see this API being used after the video is filmed and adding click points.  I always want to tell friends about something that I learned at a presentation, and with the content links I could share the exact point where I liked the content.
I can imagine if video place markers were sharable then we might have metrics where we can see what points of a video are getting the most interest and shares.

How to use a extension with chrome and selenium-webdriver

Get the extension

I thought this would be the easy part. Turns out that the new chrome web store only lets you install directly to chrome.

downloader

Create And Use a profile

  • After you download your crx file put it in the same repo as your test. Next create a chrome profile and use the add_extension method.
      profile = Selenium::WebDriver::Chrome::Profile.new
      profile.add_extension(File.dirname(__FILE__) +"/chrome_extensions/adblock/AdBlock_v2.5.61.crx")
  • Now you can use the new profile to with a driver
      Selenium::WebDriver.for(:chrome,:profile => profile)

Trouble Shooting

  • be sure that your chromedriver is updated. I used 26.0.1383.0
  • chrome  26.0.1410.43
  • selenium-webdriver  2.31.0

Creative Inspiring Motivator

Recently my team at HomeAway got personal profiles done from http://www.insights.com. It was quite a fun process. Under their categorization, I am a Creative Inspiring Motivator.  This is what came back as my key strengths:

  • Outwardly directed energy ensures a fast friendly pace.
  • Creative thinker and dynamic innovator.
  • A natural entrepreneur, inquisitive and adaptable.
  • Builds relationships quickly and effectively.
  • Able to see the larger picture.
  • Takes advantage of opportunities.
  • Ability to see options and alternatives.
  • A visionary generating infectious enthusiasm.
  • Able to turn vision into a reality.
  • Enjoys having lots of harmonious relationships.

Today I met Matz. The creator of Ruby.

This is might not be a big deal for others who have been going to the lone star ruby conference for a while, but I got to finally hear Matz today.

I snapped a quick picture along with two of my team members from HomeAway. I am the guy on the right.

Matz used his keynote to talk about features to come in the next version of ruby such as  scoped monkey patching, module prepending, lazy mapping, and ruby keyword arguments.

He also mentioned mruby, that is coming soon.  I checked out the source and ran the tests. Here is the source link https://github.com/mruby/mruby/

download the source and run ‘make’ and ‘make test’.  You will then find mruby, mirb in the bin directory.

James,Alan, and myself with Matz.

 

Managing browsers from the command line on OS X

Have you ever wanted to open a url from the command line on OS X?  Turns out open can do many cool things like that.

open -a ‘google chrome’ ‘http://www.scottcsims.com’

open -a Firefox.app http://www.scottcsims.com

Sometimes a parallel Selenium run might get out of control and you need to close all your browsers, try this one from the command line:

killall firefox

Yes, I know killall is a very old Unix command, but I didn’t know that I could pass it an application name that a OS X has bound to an executable.

killall firefox-bin
or
killall firefox

I like the -a and -e options for open.

Usage: open [-e] [-t] [-f] [-W] [-R] [-n] [-g] [-h] [-b ] [-a ] [filenames] [--args arguments]
Help: Open opens files from a shell.
      By default, opens each file using the default application for that file.  
      If the file is in the form of a URL, the file will be opened as a URL.
Options: 
      -a                Opens with the specified application.
      -b                Opens with the specified application bundle identifier.
      -e                Opens with TextEdit.
      -t                Opens with default text editor.
      -f                Reads input from standard input and opens with TextEdit.
      -F  --fresh       Launches the app fresh, that is, without restoring windows. Saved persistent state is lost, excluding Untitled documents.
      -R, --reveal      Selects in the Finder instead of opening.
      -W, --wait-apps   Blocks until the used applications are closed (even if they were already running).
          --args        All remaining arguments are passed in argv to the application's main() function instead of opened.
      -n, --new         Open a new instance of the application even if one is already running.
      -j, --hide        Launches the app hidden.
      -g, --background  Does not bring the application to the foreground.
      -h, --header      Searches header file locations for headers matching the given filenames, and opens them.