Mandaris Moore


I'm going to restructure my home screen. I can't easily find things and search has been really wonky.


I finally figured out how to do micro posts with my blog and then I decided to change stacks.


Ok, I've set up the domain for swiftslowly.com and I've announced to the world that I'm going to be focusing on swift development.

So...

What are my next steps?

The first step is to carve out some time in order to do all this.

The site that I've put together is just a chronicle of what I'm doing related to swift.

Who knows, maybe I'll be writing tutorials for swift on it before the end of the year.


I've got to find a way to update my blog with my micro posts.


Push it to the limits!


I've decided that I wanted to focus on my Swift development this year. I've got a new domain and server ready to roll.

All in all, I've done everything related in this pursuit except for actually programming in it.

Not to mention, I'm still working on my projects in python.


I thought I'd document what I've learned about setting up Sublime Text 3 to work with a python virtual environment so that I don't have to look this up multiple times. Hopefully someone else will find this information helpful as well.

Set up the project area

All projects start in a project folder that I set up.

I like to keep all my projects in a parent folder. This way applications like Timing can track that I'm being productive in my chosen terminal application.

Creating the virtual environment

Using the mkvirtualenv command to create a new environment.

I use the mkvirtualenv wrapper scripts to make the virtual environment. All the projects that I'm currently working with are using virtualenv because they are supporting python 21.

Make sure that the environment is set up without errors

Verifying no errors in environment creation.

I like to make sure that it's setting up my expected version of python during this step.

Make the activate script executable

Make sure that the environment comes up correctly.

I currently see a problem where this script doesn't execute properly. I make sure that it can run. While I'm in that directory I check the versions of pip and python as well.

Note: My Virtualenv isn't in a hidden directory.

Test that the activate really works

Test that the activate script is executable.

60% of the time it works all the time. I don't understand the convention of having a script without the file extension.

Create a directory for this specific project.

Create a directory for this specific project.

Once again, I place this in my home project directory. I like to make sure that I have everything in it's own place so I don't have to think about where stuff is.

Edit the postactivate for the virtualenv

Using vi to edit postactivate for the virtualenv.

I like to read over it and it acts as a double check that it was generated correctly.

Add a command to the postactivate

Adding a command to the postactivate script.

I make my virtual environments switch to the project directory that I'm working in when activated. This is just a convinence for me, but I've seen tutorials on how to make it so the virtual environment is brought up when you switch to the directory.

Check that the environment is pointing to the correct version of python

Check that it is _not_ using the systems version of python.

You want to make absolutely sure that this is using the virtual env's python and not your system's. I think this is pretty important as python 2 is moving to end of life.

Run pip to install any needed libraries.

Call python to run the pip module to install.

I read about it done this way because it forces the environment to place the needed libraries within the correct site-packages folder.

Checking that the installation worked

Review the installation output.

Hopefully everything installed cleanly or at least gave an error on why it didn't work.

Clone the project into the directory

Place whatever project that I'm working on in the directory.

In this case, I've got a new python project that I created on github. I create the project on github so that I could use there basic python template and github actions.

Once again, I do this so that I can differentiate multiple projects and versions. We all have projects that aren't finished and this helps me by eliminating wondering what versions things are at.

Check that all the files are there

Your project folder is going to be different.

It's all part of "trust-but-verify". I've seen a lot of misspellings.

Open the folder in Sublime Text

Opening the project in Sublime Text from the command line.

I've set my mac up to use Sublime Text from the command line.

Set up the Sublime Text project

Sublime Text showing the build system.

When you create a new Sublime Text project, you can specify how it handles builds and tests. This allows me to specify the exact version of python without having to go to the command line.

{
    "build_systems":
    [
        {
            "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
            "name": "Anaconda Python Builder",
            "selector": "source.python",
            "shell_cmd": "\"/Users/mandaris/Virtualenvs/MK-Img2fig/bin/python\" -u \"$file\""
        }
    ],
    "folders":
    [
        {
            "follow_symlinks": true,
            "path": "."
        }
    ],
    "settings":
    {
        "python_interpreter": "~/Virtualenvs/MK-Img2fig/bin/python",
        "test_command": "~/Virtualenvs/MK-Img2fig/bin/python -m unittest discover"
    }
}

After this, I can iterate with my code knowing that everything is set up properly.

Conclusion

I'm hoping that future me or someone else finds this informative. It was fun putting it together.


  1. This might change after January 1st according to PEP 373


MindMap of my Good Omens Review.

Memories

I vaguely remember this book from reading it in junior high or high school. I remember it being a fairy quick read, and probably being the first time that I read something that was humorous and religious.

Plotting

The show works at its own pace. There were some places in it that felt like it was a stopping point before the next scene and I felt that there where at least an episode or two that could have been cut from the show and no one would miss them.

Acting

This is where the show really shines and Michael Sheen and David Tennant really make the it work for me. Honestly, if they weren't on the show I don't think I could have finished it and it's only 6 episodes. If anything, I'd love to see more of their exploits throughout time.

Conclusion

It's a decent show but I don't think I'd watch it again for another season.


I got an email recently telling me that I had to take an image down because it was in violation of copy right.

I took it down and then spent an hour and a half working on test content for my blog theme.

It's one of those nights when I should have just gone to bed.


I'm about to head to my first officers training for ToastMasters. I'm hoping that it will go alright. As the Sgt of Arms, I don't have many tasks assigned to me, but you never know sometimes if there might be something that I'm missing. Another thing is that I don't want to commit to much time to the task or it might scare future prospect from doing it.


Other than that, I've been thinking about what other tasks are waiting for me.

Myself
Working on being the best person that I can be. I know I'm flawed but I have a lot of strengths.
Programming
I've got a couple projects that I want to finish.
Family
We have to find ways to grow together.