• Skip to primary navigation
  • Skip to main content

DebKR

To the Stars

  • About
  • Blog
  • Contact

Programming

Learning About Learning

Learning About Learning

03/05/2016 By debkr

learning-about-learningAs I’ve been going along in this mission of discovery that is my mid-life career-change search, I’ve come to realise just how important Learning & Development really is to me. It’s become a key area for me to look further into – especially in response to my wholly-positive experiences of MOOC’s so far and in relation to my budding interest in all things programming- and technology-led.

I’ve been thinking more and more about the ideas Accelerated Learning and Augmented Learning (specifically in relation to an ongoing developmental Programming Project). In brief, this is about how machine learning and artificial intelligence can be used to help and empower humans, rather than just be there to make rich people more money and put more people out of jobs and into long-term unemployment or underemployment. [Read more…] about Learning About Learning

Filed Under: Artificial Intelligence, Blog, Collaborative Learning, Ed Tech, Information Theory, Learning/Development, Machine Learning, Personalised Training Plan, Programming, Programming Projects Tagged With: accelerated learning, augmented learning, development, ed tech, edtech, education, information theory, learning, machine learning, programming, skill, software/programming, study, syllabus, technology-led, training, transition, unemployment

Building a Tagging Engine in Python using Dictionaries

Building a Tagging Engine in Python using Dictionaries

01/05/2016 By debkr

tagging-engineI started playing around building a Tagging Engine in Python using Lists but now I’ve studied a bit more – particularly Dictionaries – I want to see how I can perfect what I was working on. Here are a couple of key things I added/changed in this program over the version I was working on earlier.

1. Using a dictionary instead of lists for faster counting and simpler recall. This is straight forward, using the get method as taught by Dr. Chuck (see Coding 101 part 7 for more details).

words = dict()
for word in wordlist :
____if word in excluded : continue
____words[word] = words.get(word,0) + 1

[Read more…] about Building a Tagging Engine in Python using Dictionaries

Filed Under: Blog, Personalised Training Plan, Programming, Programming Projects Tagged With: ==, count, descending, dictionary, iteration, len(), length, list, loop, order, print, program, range, raw_input, user, variable, working directory

Coding 101 (part 7)

Coding 101 (part 7)

29/04/2016 By debkr

coding-101-dictionariesLists work great but they leave something on the table:
I’ve been building a Tagging Engine in Python as a little exercise to help me learn by doing, using my knowledge so far. It became clear pretty quickly that I needed a better way to handle pairs of data. In this case I was looking at a list of words and the number of times each of them appeared in a text, so that I could rank the most common words by order of significance (frequency). If I just used one list and appended both the word and its count to the list, one value after the other, there was no way I could sort by count number.

I got round this problem by having two lists, one for the words and another for the word counts. I could then manipulate the data as needed. This did work fine in the simple program I wrote, but it was my usual unwieldy, sledgehammer approach again. I knew there was a way I could handle that pair of data points better – using Python’s Dictionaries functionality – but I didn’t want to rush ahead of the curve. Well now I get the chance to learn all about dictionaries. [Read more…] about Coding 101 (part 7)

Filed Under: Blog, Personalised Training Plan, Programming Tagged With: coding101, count, data, database, dict(), dictionary, function, items(), key/value pair, list, order, python, return, value, variable, word counts

Coding 101  (fun with lists)

Coding 101 (fun with lists)

18/04/2016 By debkr

coding-101-fun-with-listsThis is me just mucking about with lists, testing out what I’ve learnt so far and applying it to little problems I might want to solve. I find it the best way to learn, and it’s more fun than reading books!

Project 1: Building a tagging engine (Mon 18Apr16)

1. This snippet splits each line into a list, creates an iteration variable to loop through all words in the line list and print them out. I add various print statements at suitable points (both variable print statements and descriptive text statements) to help me test the program structure, to make sure it’s doing what I want and expect it to at each point through the loop. [Read more…] about Coding 101 (fun with lists)

Filed Under: Blog, Personalised Training Plan, Programming, Programming Projects Tagged With: add, append(), coding101, continue, count, file, find, frequency, iteration, len(), line, list, loop, phrase, print, program, range, split(), test, text, variable

Coding 101 (part 6)

Coding 101 (part 6)

16/04/2016 By debkr

spaghettiWhen strings become spaghetti:
Working with strings and files, particular when using the for {line} in {filehandle}: construct, allows us to do some cool manipulation of data, by finding, splitting and stripping the data into different chunks based on some repeating factor (such as a comma spearating each value in order), then sorting, counting and totalling those values through iterative loops. [Read more…] about Coding 101 (part 6)

Filed Under: Blog, Personalised Training Plan, Programming Tagged With: append(), category, code, coding101, data, element, find, function, handle, index, iteration, key/value pair, len(), length, list, loop, numeric, position, python, range, repeating, return, sorting, split(), startswith(), string, text, value, variable

Holy Crap… Coding Can Be Dangerous

Holy Crap… Coding Can Be Dangerous

15/04/2016 By debkr

holy-crap-coding-can-be-dangerousIndependent, UK: Man accidentally ‘deletes his entire company’ with one line of bad code. Let this be a warning to us all.

(Hat tip to @JamesGrundner and @Chuck_Moeller‘s DevOps Daily.)

PS: A sensible disaster recovery plan should always include non-connected back-up copies held offsite (certainly where it’s business-critical like it was in this case).

Filed Under: Blog, Programming Tagged With: back-up, business-critical, code, coding, devops, disaster recovery, git

Coding 101 (part 5)

Coding 101 (part 5)

11/04/2016 By debkr

coding-101-data-structuresThis post follows on from earlier Coding 101 posts and records my responses and learnings from the highly-recommended Python programming book and Coursera specialisation by Charles Severance (see References below).

Opening data files:
In all our previous examples we used data as a constant (i.e. hard-coded into the program some way) or we prompted the user to enter some data which was then manipulated by the program in some way. We want to be able to read data from a variety of sources though – either from files, or from the web – and we know these are going to be much larger data sources, so we’ll need to be able to access and save files on our hard drive somewhere. [Read more…] about Coding 101 (part 5)

Filed Under: Blog, Personalised Training Plan, Programming Tagged With: coding101, count, data, email, file, filename, function, input, line, loop, manipulate, mode, open, print, program, prompt, python, read, reading, rstrip(), searching, startswith(), string, strip, text, type, user

« Previous Page
Next Page »

Copyright © 2016–2025 · Powered by WordPress On Genesis Framework · Log in

  • Writing
  • Developing
  • Consulting