New Stuff

Worship Tech Web Tools Blog

4192093_illustration.gifThis is an ongoing blog of web tools and technology related to worship, music and church. The idea is to give you good web points and resources that you can go to. Some of it is just me cruising the net, others are favorites of friends.

Enjoy what you see here.  If you find an interesting, useful and technology related site or resource that deals with helping worship or musicians in general, please send us a note and we will check it out. Perhaps we can feature it here.

Thanks!

Enjoy! - Kim Gentes

WorshipTeam.com Mobile get LOUD- Full Audio NOW ONLINE!

New update: WT Mobile just added mobile audio to the feature list! Streamed directly to your mobile device, this is Worshipteam.com for your mobile-- and it rocks! No more burning CDs or such.. Just get the audio right on your mobile device for practicing and learning songs!

You can get more info at www.worshipteam.com 

My Tech Team Needs HELP! (Answer: WorshipMusicTech Seminar, July 17/18 in Phoenix AZ)

Kim Gentes will be teaching a couple of sessions at an exciting technology and worship seminar in Phoenix, next Friday/Saturday (July 17-18). We wanted to let you know about this tech and worship event and invite you to come. Here is some more info from the seminar below! See you there! Kim

My Tech Team Needs Help!

Like it or not, technology is a part of your ministry today.

Be it lights, sound, visuals, or room dynamics, there is a lot that can go wrong if not attended to properly.

Worship! Arizona is delighted to help sponsor and promote the first ever WorshipMusicTech Seminar coming next Friday and Saturday, July 17-18 at Calvary Community Church, 12612 N. Black Canyon Highway, Phoenix, AZ.

We have assembled a team of professionals from within the Worship Technology Industries to offer valuable information that will help church staff, musicians and tech personnel advance their use of technology. A list of session tracks is available on the WorshipMusicTech website.

Registration is easy and available online for $30.00/person before July 10th. After that the cost is $40.00 at the door.

Schedules, presenters, and breakout session information is available at www.worshipmusictech.com See you there!

 

Kim Gentes

WorshipTeam.com goes Mobile - iPhone, Blackberry, and more! 

WorshipTeam.com made a big announcement today!  They have added mobile access to their platform.  I have tested it out and I love it. It's fast, sharply formatted and summed up nicely for mobile brevity.  Of course, since I am involved with Worshipteam.com itself, I might be considered biased.  But here is the great thing--- WT Mobile comes free with your Worshipteam.com subscription.  It does not cost extra! Not only that, you can use it while still checking out Worshipteam.com for free during your TRIAL! Full function of paid subscriptions.  So even if you don't have Worshipteam.com, try it out for a month for free, and be sure to check out the mobile feature as well.  Here is the announcement below.

WorshipTeam.com

We are pleased to announce the launch of WT Mobile!


Now WorshipTeam.com is available on your iPhone, Blackberry, Windows Mobile or other smart phones and devices. With quick, easy access you will be able to view your upcoming events and sets. You can even view the lyric sheets/chord charts for songs in your set! Last minute phone calls or emails are a breeze with your teams contact information just a click away.

Simply type in "worshipteam.com" in your mobile web browser to get started with WT Mobile!

Browser to Browser File Transfer (Kim Gentes @ Worship Tech Blog)

Whether you are trying prepare for Sunday morning and need to get media from home to church or preparing, sharing resources while emailing a friend and need a file quickly, sometimes you need a direct ability to transfer files quickly from one person to another. That is what Files Over Miles is (http://www.filesovermiles.com/).  It is computer to computer, browser to browser file transfer, without needing to upload your file to a cloud service or website or across an IM service, all of which make transcient copies of your file and are inevitably slow.

 

Blank Paper in an Online World (by Kim Gentes @ Worship Web Tech Blog)

Blank Sheet MusicIt seems like an obvious contradiction, but oft is the time that I find myself with a desire to just get a clean piece of sheet music.  I could search through the city, trying to find a music store that still stocks blank sheet music, but I might find myself going crazy with the thought of fighting the guitar-hero crowd who ventures to a music store believing they can turn their gaming skills into playing abilities... but I digress.

Anyways, if you would like to print a peice of clean sheet music to your printer and have some ready to work, old fashion paper in the gritty edge of your fingers, then look no further- simply go to a new website that lets you print out blank sheet music pages, set up according to your specs.

The site is easy enough to navigate to : http://www.blanksheetmusic.net/

There are no real hidden agendas here. Just a nice sleek tool for printing out blanks sheet music pages, that can be customized with standard musical info such as time signature, key signature, multi-staves, brakets, indentation, TAB/treble/bass and other signatures. Even the scaling is customizable, along with the orientation of the sheet.  This is a great little flash application that lets you do whatever you want to a customized blank peice of sheet music.  You can even choose from prebuilt templates for various instruments, store your own customizations and a bunch more.

The site is driven by ad words revenue and donations, but it is harmless enough and not invasive.

All in all, a nice little find on the web for musicians and songwriters.

 

blessings

Kim

Rhythm for the Eyes - the art of Video in Worship (Kim Gentes @ Worship Tech Blog)

Few technologies have flooded the modern church as powerfully, quickly and pervasively as the recent deluge of video and visual engagement in local services from small to large churches alike. For those well on the way to discovering this new tool in the mode of exaltation, you already know technology is involved, but you may not know what or who are the movers and shakers in this revolution. Today's post is about all that.

 

Learning the landscape.

Before you go off and start inducing photosensitive trauma into your congregation, it might be good to understand some concepts and important why's and whatfors. Here are some good general sites for that:

several articles here: http://www.churchproduction.com/go.php/article_by_type/C14/

good articles and links here: http://www.gregatkinson.com/

a nice blog here: http://visualworshiper.com/blog/

good book : http://www.quentinschultze.com/2009/01/high-tech-worship-interview.html

more detailed info and coolness factor: http://christianvisualist.wordpress.com/

 

Choosing an engine.

In the scope of video/media presentation, most people in churches settle on a software driven solution that puts a program as the core engine for organizing and presenting your visuals.  In the "marketplace" there are really 4 major players in this core compentancy strata of media foundation engines:

Mediashout ( http://www.mediashout.com/ )  - the premier high-end presentation software engine. Currently runs only on PCs. 

Pro-Presenter ( www.renewedvision.com )  - another high-end presentation software engine. Currently runs only on Macs.

Easy Worship ( www.easyworship.com ) - simplicity with basic presentation functions.

Powerpoint ( www.microsoft.com ) - the most common denominator, Microsoft's presentation software meant for the office still holds the most churches in its installed base.  When flipping through linear slides is all you want, this works.

 

Bulking up on content.

Knowing how to use video, and having a competant tool to drive it is like good driver with a car but no gas. The visual fuel in the worshiping church is content.  Here are some top notch media sources.

iWorship DVDs  ( http://www.worshipmusic.com/dvds-integrity-iworship.html and http://www.worshipmusic.com/musician-resources-integrity-iworship.html)

iWorship FLEXX ( http://www.worshipmusic.com/flexx.html )

Work of the People (http://www.theworkofthepeople.com/)

WorshipHouseMedia (http://www.worshiphousemedia.com/)

Sermon Spice (http://www.sermonspice.com/)

Shoutable.com (http://shoutable.com/)

more info on sources from our own stuff : http://www.kimgentes.com/worship-technology-roundup/

 

Important Peep.

After scanning any area of knowledge, its good to learn by just watching a skilled craftsman. In the arena of visuals in worship, there is none more acclaimed than "worship vj", Stephen Proctor. I could laud the events, people, experience and kudos that Stephen garners from anyone in the media and visual arts communities, but its probably just a lot better for you to visit his site and learn how someone at the high-end of visual expression in church and event contexts thinks and does.

http://worshipvj.com/

 

Now, go forth and video-aphy!

Kim

History of the Internet

Tracing the real history of the Internet is a little like telling who the most important people where in the 20th century-- you will get a different answer from different people.  Although generally agreed upon major players and organizations make it in to most stories of the Internet, you will find derivations from the source material that depend on, well, the source!  The Brits, French and Americans all think they did something major to help develop what would eventually become the internet.  But frankly, one thing should be said that is not normally expressed in most text books or fact lessons- the Internet itself was not a pre-planned notion or idea.  No one woke up one day and said "hey, we have computers. Let's build a world wide connected system of redundant path communication nodes, with a robust protocol and extensible architecture."  In fact, most of what we now have that is used on the Internet was an amalgamation of ideas and systems that merged over time, to meet the needs of different governmental and commercial entities.

For me, as a software engineer, I began using the Internet in 1993.  One thing commonly minimalized by "Internet" historians are two major points: 1) popularization of network services to home users by the CompuServe service (the first true precursor to the modern day ISP).  2) the explosion of the Internet directly attributable to the development of the Mosiac Browser and the work done at NCSA-UIUC.  Frankly, most "historians" tend to think technology drove the Internet explosion.  But that is short sighted.  We had connectivity technology long before 1993/1994.  But no one really cared much about it (except scientists, academics and military minds) before the release of the Mosaic browser.  Mosaic was the grand-daddy of all web browsers.  From it, all browsers came. Once we have a graphical viewing tool to accompany the information storage and retrieval devices of the internet, common use of the web exploded- and Internet found a lifeline to become the predominant technological and commercial wonder of the last 20 years.  These two points (CompuServe and NCSA-UIUC's Mosaic browser) are often trivialized by historians, because, frankly they see the non-academic/scientific influences as being somehow less valuable. But they are crucial. Keep that in mind as you read or watch any history of the Internet.

For those who want a somewhat extensive (and less than clearly scholarly) review of the Internet development, I would refer them to the well-kept article at Wikipedia. 

http://en.wikipedia.org/wiki/History_of_the_Internet

Yes, it is actually fairly accurate and is kept under close scrutiny by the myriad of people who watch over that portal.

For a more terse, though somewhat euro-centric branded, view of the growth of the Internet, there is a good web movie online at YouTube that does quite well. See below.

Hope this little informational walk-through helps you understand a little bit more about the technology we now use everyday.

Kim Gentes

Live Webcast of Studio Recording - Benefits Extreme Poor

Forgotten Stories

It's hard to imagine the kind of plight and pain that is experienced daily by the poorest of poor in the world. Our internet-enabled western world is simply not often in touch with the reality of this kind of pain. But Dereck Williams can more than in touch conceptually.  He has been there, stayed there, ministered there. Derek is a long time ministry partner of Tommy Walker, having produced albums, run ministry ventures and written articles and books on the ins and outs of ministry, music, worship, business and the poor across the world.

My first contact with Derek was several years ago when he was running the worship/ministry efforts of Tommy Walker. Over the years, Derek is not only shown his giftedness in administering a powerful ministry, but has been somewhat of an entrepenuer in showing people ways to connect with real ministry. One such ministry is their ongoing travel and outreach to an area in the Philipines, near the capital city of Manila. In a beautiful effort to make a difference in the lives of real people in desparate need, Derek is spearheading a DVD/CD project that directly benefits 14,000 families living in a city dump outside Manila.  This benefit project is unlike any other you have heard of.  And to take it one step further, they have decided to record the audio project to a live web audience!  That is where this tech blog comes in.

This is the first time you may well have the opportunity to WATCH, listen and feedback to the live crew of veterans recording this project.  And this is no out-of-work list of musicians who are looking for PR.  The recording cast includes Jerry Watts, Sergio Gonzalez, Tom Strahle and Troy Welstad have played for artists such as MercyMe, Shane & Shane, Phil Wickham, Tommy Walker, Vicki Beeching, Evan Wickham, The Kry, Adam Watts, Pink, Hillary Duff, Jennifer Lopez, Herbie Hancock, Justo Almario, Peter Cetera, Sergio Mendes, Sheryl Crow and Simon Phillips.  This team is brought together to support Paul Stephens, a prominent worship leader from West Covina, CA.

This is not a one-track-at-a-time recording-- this is "live" in the studio. And you can be a part of it.  Amazing!  Kudos to the staff Derek has put together on this project for having the technical chops to make this an online webcast.

So please check it out live at http://www.forgottenstories.org/

Derek makes no apologies for this being a benefit project and encourages you to give towards it. I highly recommend Derek and this project and couldn't agree more with this encouragement to have people get involved in making a real difference.

Go check it out! 

Blessings

Kim Gentes

 

Facebook Friends for a Whopper! Would you do it?

OK, so now we all know that Facebook is the new social community phenom.  It's not as much for kids, because of its closed nature and more stringent environment.  Not that I am endorsing it as a "safe" location, but as Internet things go, it is kept pretty clean.

Recently, I took a couple of courses online and both were managed through groups on Facebook.

Shortly thereafter, the relatives started finding me.  Then the friends. Then the church folks... and on it goes. Pretty soon everyone I had ever known or met in real life (in any capacity or to any degree) was becoming my friend on Facebook.  I thought that was pretty cool.  Occasionally there is some wackoness with all that, but hey, so is real life.  In general, it was cool.

Then I saw something that made all that Facebook stuff kinda freakishly fun.  A new brash promotion from Burger King-- I could sacrifice a few of my Facebook friends and get a free Whopper. What !?  Really!

Ya. Really. You can read all about it (and actually do it) right here:

WhopperSacrifice.com

It's corny, cool, weird, stupid, fun, sad and tasty all at the same time. Can't say that about a lot of things!

I did it! :) And while I felt sad at the time, I couldn't help thinking how the victims would feel who I sacrificed for the whopper.  It's a test of your mettle for sure.  You might consider politely asking 10 nice friends to be your sacrificial patties, so they get your warning prior rather than just the Burger King notification they will get automatically for anyone you delete as a friend for the sake of a Whopper. I found that I had more than enough folks who thought it was funny that I got my quota, got my burger, and re-added the friends soon enough :).

Check it out! 

Happy eating!

Kim

Regular Expressions Except a Given String - Negative Patterns (Kim Gentes Worship & Tech Blog)

Occasionally, I use this column in technology and worship tech to put some tips out there on the technical side of things.  Today is such a day.  This is another Regular Expression segment that might help someone.

The goal of much software is to find things.  A way to find stuff in computer languages is a sub-language called "Regular Expressions".  Most regular expressions deal with finding specific instances of data inside of a larger string. When looking for those instances of data, we often use "patterns" to match what we intend to look for with the data we are looking through to find our desired information.  Those patterns often indicate what we are looking for, as in ".*Kim.*" (without the quotes) is a regex pattern that would look for my first name inside of any string.  Any string that contained my name would match that pattern.

But in real life, we don't always know what we are looking for in a positive fashion.  Sometimes we are looking for things simply because they AREN'T something else.  Let's go back to my name, Kim.  If I want to create a regex pattern that would match every string that did NOT contain my name, regex has a way to do that as well.  It is called "negative lookaround".  There are two types of negative lookaround- "negative lookahead" and "negative lookbehind".  One is for looking forward into a string, the other is for looking past the current position we are at in a string.  For simplicity sake, lets simply look forward, since that will be the most obvious case.

So let me clarify- what we want to do is write a pattern that will find every string that does NOT contain my name, Kim.  Ok, here you go:

^(?:(?!Kim).)*$

The core of the "negativeness" of this expression is (?!Kim), which simply says match the next thing forward that doesn't equal exactly "Kim".  The rest of the expression allows us to capture the entire string, from start to end. And if all you are doing is trying to make sure that you match a string that doesn't contain a specific pattern, then you are good.

However, sometimes what you are actually looking for is to find any part of any string that does not contain the negative pattern (the name for a pattern that finds a string avoiding a specific pattern).  In other words, what you want to do, is look through and extract all the data from any string, except avoid the data from the negative pattern.  This is actually a little more complicated, but here is one option:

^(((?:(?! Kim).)*)|((.*)Kim(.*)))$

This pattern will find lines of data that contain nothing to do with Kim, and it will capture data that is on a line with Kim (but can programmatically ignore Kim itself).  But in order for this to work, you must actually use what is called captured groups. Regex programmers will understand this as the chunks of identified data that matched groups in their expression.  A group in a regex expression is formed each time you use a pair of parenthesis.  Using numbered groups, you can get just the information you intended. In the above case, you will need a little user code to get the right data out.  So, in PHP, you would have the following code using the above pattern:

if (preg_match('/^(((?:(?!Kim).)*)|((.*)Kim(.*)))$/im', $rawstring, $regexps)) {
  $clean_line= $regexps[2];
  $clean_before_patt= $regexps[4];
  $clean_after_patt= $regexps[5];
} else {
  //failure
}

What you end up with is 3 variables as you parse through your strings. The variable "$clean_line" will contain the string that matches data that has no "Kim" in it at all.  The variable "$clean_before_patt" will contain the portion of a string which preceeds the the word "Kim". The variable "$clean_after_patt" will contain the portion of a string which follows the the word "Kim".  Simply evaluate the values off of those variables to determine what you want to use as you search through your strings.

Of course, you would replace "Kim" with whatever pattern you DON'T want to find in your strings.

Also, my examples use both matching ^ and $ at lines breaks and search case insensitive (on the PHP preg_match).  If you want to search case sensitive simply remove the "i" flag on the preg_match pattern. Similarly, if you don't want ^ and $ to match at lines breaks, just remove the "m" flag in the same preg_match situation (your use and regex engine may have its own flavor on both these flags). 

God bless, and happy coding

Kim Gentes

 

*YOU ARE FREE to use this algorithm in any application (commercial or personal or whatever). It comes with no warrantees.  If you DO end up using this REGEX pattern, I ask (but don't require) that you please do so with the following considerations:

  • Please make this notation in your source code:  ©2008 Kim Anthony Gentes - FREE TO USE ANYWHERE.
  • Please post a response on this blog entry below (you do that by clicking on the "Comments" link at the bottom of this entry), saying you found this and are using it. I'd just like to know if its helping people and how people are using it.

When using the regex, some important things to know:

Options (turned on in your language/utility): ^ and $ match at line breaks

iWORSHIP FLEXX - mpeg video component media (Kim Gentes Worship Tech Blog)

iWORSHIP FLEXX is marketed as "videos that follow your lead". An apt description, iWORSHIP FLEXX are professional videos related to specific worship songs. Each FLEXX product contains several songs (normally 7 different songs on each edition). Each song comes with several MPEG & Quicktime files - each file represents a song segment. Used with software like MediaShout, you navigate through verses, choruses and other song sections by clicking on these custom designed videos. iWORSHIP FLEXX is easy to use and contains exceptionally well produced content.

iWORSHIP FLEXX highlights very progressive video styling and graphics which may be a notch or two above what you are currently using in your services with adding static lyrics on some stock motion backgrounds.  The folks producing iWORSHIP FLEXX have done a spectacular job at making the videos very crisp for their purpose- upbeat songs pop, while balads pull back and let the image breathe without disturbing the visuals too much.  One thing I liked about the offering is that it provides intro segments, which let you cue up the song musically before the lyrics start hitting the screen.  There is also a great extended video segment, letting you run consistently on the screen, even if your band is playing an instrumental section.

Technically speaking, you will want to make sure you are using a relatively new machine with FLEXX video demands.  This model of doing VJ or worship lyric presentation removes the lyrics COMPLETELY from the process-- they are all embedded in the FLEXX video segments.  And that is the point- what you are doing here is simply running a single video for each section of the song.  The concept is brilliant, but does mean you can't have the old PC that ran powerpoint try to chug along on these meaty MPEG or Quicktime videos as you swap through song segments.

Churches that want a more progressive, higher level video experience will love FLEXX.  I would say that some churches may find FLEXX a little too progressive, depending on their song selection.  Over the years I have heard churches get more and more articulate about too much happening on the video screen during worship.  I think FLEXX could be used well, but I am guessing some churches will want to be sure to watch a demo before purchasing for their more conservative environments.

Overall, its a great product, beautifully and artfully rendered, with a perfect mix of technical chops to make it "plug and play" with MediaShout or other higher end presentation software. 

iWorship FLEXX has several titles out including:

 

 

 

Review by Kim Gentes

MasterWriter- Songwriting software (Kim Gentes Worship Tech Blog)

MasterWriter is an innovative and easy-to-use software program for lyric writing, but includes well thought audio recording and copyright record keeping functions. While MasterWriter has the best rhyming dictionary available online or offline, it is better defined as a songwriter’s workspace. MasterWriter is the pinnacle for lyric writers, though it doesn’t contain melodic or chordal songwriter development tools. This excellent creative and organizational tool is available on Mac and PC.

I recently had the opportunity to try out Masterwriter personally and enjoyed it so much, I wanted to meet the people behind it.  A few weeks later, I had the opportunity to talk with Barry De Vorzon who created the software.  I caught up with him at a songwriters conference out in California. Barry is a wonderful guy and has a real heart to see songwriters equipped with a tool that is both helpful and easy to use.  

If you get a chance to check out Masterwriter, I encourage you to do so.  Several well known songwriters are using it and it can be literally mastered by wathcing the amazingly well-though 18 minute flash tutorial.  

Songwriters- MasterWriter is a slam dunk for you.  Add it to your toolkit. You'll be glad you did!

Check it out at :

http://amzn.to/IRPO2z

Kim Gentes

Regex Pattern for Parsing CSV files with Embedded commas, double quotes and line breaks

While you have stumbled on KimGentes.com, you might be coming for a few different reasons. Some of you are interested in articles and resources on Christianity, music, worship and such. Others of you are interested in technology information related to church worship settings. Some other folks are programmers who are looking for helpful information on technical challenges. This particular post is a bleed over from some of my technical work in programming. Specifically, this is a post to present a solution to parsing CSV files.

Programmers understand that CSV files are simply text data files that have information stored in value fields in the file. Each of the fields is separated by commas to delimit when one value/field ends and the next begins. This is why they are called "Comma Separated Values" files (CSV for short). Anyone who is new to this concept or programming might think that writing a program to extract data from files wherein the commas separate the data fields, should be an easy task. And if that was the total sum of it, it would be quick and simple in virtually any language you could choose to do it in. But that is not the end of it. CSV files are written by a host of popular applications and read by thousands of programs as well, including almost every spreadsheet program in existence, including Microsoft Excel. When the first CSV file user started outputting values to fields and reading them in another destination, they quickly realized a limitation- if you wanted to include the literal character of a comma (,) inside of a field value itself, this could not be done, since it would be interpreted as a field separator and its value wouldn't be understood (as well as the field in which it appeared being literally chopped in half).

To overcome this problem, it's assumed that some Neanderthal software developers (back in the Jurassic era of programming) came up with an idea to allow programs to insert and read commas inside of comma separated fields. They would allow fields to be encased in double quotes as a signature that the value inside this field should be read literally (including commas) from the first double quote to the ending double quote. This worked fine and commas could now be embedded in CSV field values. But, as you can guess, these cause further problems for programs- now, the commas of the world had safe haven usage inside of comma separated values, however, double quotes now could not be included inside of a double quote encased field value. Programmers quickly realized that they couldn't keep adding special characters to allow for current special characters to be escaped (which is a way of saying interpreted as literal data without functional consequence in the interpretation of the data).

So, to avoid using other characters to escape current special meaning characters, CSV file progenitors harkened that users could escape double quotes inside of double quote encased CSV fields by placing two double quotes together in the text. This would the standard way of escaping a double quote character ("), by simply placing to double quote characters next to each other, as in "".

All this is fine for the people and programs writing the data- its simple straightforward programming to output such information. But reading CSV files that have embedded double quotes, commas and can include embedded line breaks is a complicated concept. Such is the life of a programmer :). To meet this challenge, we often use a pattern parsing language called Regex (which stands for Regular Expressions).

Regex maybe the most popular language in the programming world. It is used in literally every high level programming language we know of in the world, including Visual Basic, C#, Javascript,  Java, PHP, Perl, Ruby and dozens more. It is included in several utilities such as search functions inside of UltraEdit and Ace Text. And it is included in most revisions of Unix (and other) OSes in command lines functions such as grep, Windows utilities powerGrep and so forth. Technically speaking Regex isn't a programming language on its own. It's a pattern matching engine that is often embedded inside of other languages. It became widely popular due to its inclusion primary in the Unix/Linux command line function of grep and the early web standard language of Perl. Now, most programmers can't conceive of a language that doesn't include some flavor of regex.

That all said, I have chosen to write a regex pattern that can handle parsing the fields of a CSV with all the conditions I mentioned above. There are plenty of other examples of CSV parsers around, but none seem to do the trick I was looking for, which is grandly frustrating when Excel can import and export a CSV with all the listed nuances quickly and easily. So, not finding a good solution, I have written a short CSV parsing pattern. It is below.

CSV-parser (regex pattern below)

 

^(("(?:[^"]|"")*"|[^,]*)(,("(?:[^"]|"")*"|[^,]*))*)$

 

*YOU ARE FREE to use this algorithm in any application (commercial or personal or whatever). It comes with no warrantees.  If you DO end up using this REGEX pattern, please do so with the following considerations:

  • Please make this notation in your source code:  ©2008 Kim Anthony Gentes - FREE TO USE ANYWHERE. No Warrantees are implied or offered. This software is offered "as-is". Usable by anyone (freeware, non-commercial or personal). No support or service is offered or implied by your usage. Use of the software implies your own assumption of maintenance, liability and operability of the same. Only restriction for us: you should include this copyright notice (full text) with the code. 
  • Please post a response on this blog entry below (you do that by clicking on the "Comments" link at the bottom of this entry), saying you found this and are using it. I'd just like to know if its helping people and how people are using it.

 

When using the regex, some important things to know:

Options (turned on in your language/utility): ^ and $ match at line breaks

Description: below is a textual description of the regex pattern that may be helpful to programmers who want to understand what is happening in the regex.

 

Assert position at the beginning of a line (at beginning of the string or after a line break character) «^»
Match the regular expression below and capture its match into backreference number 1 «(("(?:[^"]|"")*"|[^,]*)(,("(?:[^"]|"")*"|[^,]*))*)»
   Match the regular expression below and capture its match into backreference number 2 «("(?:[^"]|"")*"|[^,]*)»
      Match either the regular expression below (attempting the next alternative only if this one fails) «"(?:[^"]|"")*"»
         Match the character “"” literally «"»
         Match the regular expression below «(?:[^"]|"")*»
            Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
            Match either the regular expression below (attempting the next alternative only if this one fails) «[^"]»
               Match any character that is NOT a “"” «[^"]»
            Or match regular expression number 2 below (the entire group fails if this one fails to match) «""»
               Match the characters “""” literally «""»
         Match the character “"” literally «"»
      Or match regular expression number 2 below (the entire group fails if this one fails to match) «[^,]*»
         Match any character that is NOT a “,” «[^,]*»
            Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
   Match the regular expression below and capture its match into backreference number 3 «(,("(?:[^"]|"")*"|[^,]*))*»
      Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
      Note: You repeated the capturing group itself.  The group will capture only the last iteration.  Put a capturing group around the repeated group to capture all iterations. «*»
      Match the character “,” literally «,»
      Match the regular expression below and capture its match into backreference number 4 «("(?:[^"]|"")*"|[^,]*)»
         Match either the regular expression below (attempting the next alternative only if this one fails) «"(?:[^"]|"")*"»
            Match the character “"” literally «"»
            Match the regular expression below «(?:[^"]|"")*»
               Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
               Match either the regular expression below (attempting the next alternative only if this one fails) «[^"]»
                  Match any character that is NOT a “"” «[^"]»
               Or match regular expression number 2 below (the entire group fails if this one fails to match) «""»
                  Match the characters “""” literally «""»
            Match the character “"” literally «"»
         Or match regular expression number 2 below (the entire group fails if this one fails to match) «[^,]*»
            Match any character that is NOT a “,” «[^,]*»
               Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
Assert position at the end of a line (at the end of the string or before a line break character) «$»
Thank you for all the additional information/examples and samples from various languages! Keep posting your ideas that can help others!
thanks
Kim

How To Blog & Podcast Your Life Away!! (Kim Gentes)

Squarespace.com - A while back I was looking for a way to maintain a few web sites for personal, small business and church use. In all cases, my big goal was excellent presentation with low maintenance effort.  I figured the trade off would be to find a system that has nice GUI and presentation features and could do things quickly, but it would cost the typical arm and leg.  I searched high and low. You know the drill- blogger, typepad, moveable type, etc etc.  Then a friend (a good smart friend) told me about Squarespace. Wow! It looked fantastic.  Then he showed me how to edit and update things. Another Wow!!

Seeing as all my needs were met, I braced myself for the sticker shock.  But what I got was a 3rd "Wow"! There was no shock, just a nice, low cost, but beautifully functional podcasting/blogging/web tool for a few bucks a month.  Ya, I know, I was surprised too.

There is just  a ton of great functions inside it and some advanced templates that people with little (or no) time can employ fairly quickly.  I have way too much to do than have to look around and figure out if my latest podcast got exported and updated on iTunes or if my blog is working well on all browsers.  Come on, let the blog software handle all that stuff. Squarespace does!  If you have a church or ministry or music business or whatever-- you might check out SquareSpace.

Me like! :)

K

A Chord a day-- will it keep the Doctor away?

aChordADay.comIf you're like me you spend a lot of time doing a lot of stuff. Some of it necessary, some of good, but a lot of it just busy-work.  After a while, you forget what you like to do.  For guitarists, sometimes you don't have an hour to sit down and practice, or even 30 minutes.  Unless you play professionally, your life is spent with a lot of other things to keep the lights on and the roof over your head.

So when you want to learn something with guitar, you go a couple routes- find a course or scheduled lesson with a good teacher who can push you further.  Or, if you just have the desire to learn a bit each day, but aren't at a place to do a lot more right now, it can be nice to get a little nugget of guitar wisdom each day.

This is where a site like "A Chord A Day" (www.achordaday.com) can come in real handy.  Az Samad is a noted fingerstyle guitarist from Malaysia, who has put together a simple, but effective little online respite for the wandering guitarists out there.  Nothing fancy, but a nice vibrant chord each day for you to consider. It includes a short measure or two of sample notation, and a nice online audio demo of the chord, along with a sentence or two from Az.  Like musical vitamins for the guitarist each morning, this might indeed keep that muse-hated physician "Doctor Boredom" away for another day.  Check it out (www.achordaday.com)

Kim Gentes

Make Your Own Instant Music Videos-- no kidding!

Ok, so lets be honest- you have gone out and purchased a ton of those song videos for worship. You maybe have even bought the motion backgrounds and tried to match them to songs with your display software during worship.  The most daring of you have even tried to make your own worship videos from stock photos or (scariest of all) your own photos from your own church or community.  The results seem like they are ok, but its often a long process.  Truth is, to get top quality stuff you have to be (no kidding) an actual video professional.  Well, after a few hundred bucks on stock photos and your venture into buying that "one-size-fits-all video maker program" you are ready to throw in the towel. 

Yep, I hear ya. It's a lot of work for quite limited results.  So when I came upon this super cool next web tech thing, I was more than a little skeptical. (aren't we all)....

Enter- Animoto!  as in, animoto.com ...

The premise is this- make your own music video, of the images/slides against music rhythm type.  But instead of having to do all the work of corregraphy from the music rhythm against the picture changes and motion-- leave it to a web servicem visa vi -- animoto.com ...

Creating a music video takes about 3 simple steps-

  1. Upload some images that you'd like to be included
  2. Upload your music file
  3. Finalize your video.

I sure wish it was harder than what I just described.  I mean after all, I bought Sony Vegas Pro 8, Sound Forge, Cinescore, etc... But those really are the pro-level tools needed for pro level work.. if you just want to get some cool ideas by throwing pictures and music together, then animoto.com is your ticket.

It won't solve all your worship video blight problems for years, but it is a nice respite of functionality amongst a harshly commercialized world of "make a professional video in 10 minutes with our $300 software".... 

Instead, check out animoto.com for free (30 second vids are free, longer is a cost).  It might just be enough of a breather for you that you find you can use some of what you create there.

One last thing that is important to note-- Animoto is free as long as you create just 30 second shorts of music videos.  When you want to produce full length (match the length of the song) videos, it requires you do something with actual cash.  But its really a great deal-- literally only $30 per year and you get unlimited access (or you can pay $3 per video if you really have just a couple projects to do). Hardly seems like its a fee at all!  Really, just try the service out first. Once you see what it can do on 30 second shorts, you will having no problem telling your friends about it.

Kim Gentes

Guitar Praise Blog

Run by a guitarist named Kenny Goh!  This is an awesome resource for guitarists!

An amazing website of great stuff, done by someone who seems pretty genuine (he's not trying to just sell something)... here are plenty of youtube.com vidoes on his blog, and almost all are his revisions of how to play certain electric guitar licks.. very very good site! Check it out!  Be sure to send your church guitarist here!

http://guitarpraise.blogspot.com/

Ear Training Tools

The Interval Ear Trainer is a great online application.  It runs a series of tests on your ability to hear note changes (which those fancy, schmancy musicians call "intervals").  Even if you don't score high at first, use the tool to keep getting better.  You will find it does help you get a better "music memory", allowing you to more quickly know the interval change you heard.

You should really check this great ear training tool out online.

http://www.musictheory.net/trainers/html/id90_en.html

 

Guitar Chords Finder

Here is a very cool inline tool you can use to find the name of chords that you are playing or wanting to play.  You can hit "play" and hear the chord too.  It's a nice little deal, so I figured it might be useful to some.

Page 1 2 3