My new series of posts about building a startup MVP

Posted by Aleksey on Feb 17, 2015 in Software Development, Web

I decided to help other startups build their ideas, their first prototype, MVP, or a full-stack production version. I started a series of blog posts on my consulting page: http://YourMVP.consulting


Other social media sharing buttons

Posted by Aleksey on Feb 7, 2015 in Web

This topic may seem simple, but I am surprised to find out there is a lot of confusion about variety of social media buttons and sharing options. I plan to update this post with additional instructions.

1. LinkedIn Share

This is an obvious button that shares your blog post (or a web page) to a visitor’s LinkedIn feed.

LinkedIn significantly refreshed their developers portal and added new API features on February 12, 2015. They did not have too much impact on the simplest integration methods such as share buttons. It can still be generated using this link – https://developer.linkedin.com/plugins/share . When  you generate code, don’t forget to paste the URL that you want to share. The code will look like this:

<script src="//platform.linkedin.com/in.js" type="text/javascript"> lang: en_US</script>
<script type="IN/Share" data-url="http://dmitriyev.name/other-social-media-sharing-buttons/"></script>

3. LinkedIn Follow Profile

This one will generate code to follow your profile – https://developer.linkedin.com/plugins/member-profile

3.1 LinkedIn Follow Company

However, if you have a company page that  you created, you may use this one instead: https://developer.linkedin.com/plugins/company-profile

4. Pinterest Share


5. Twitter Follow

6. Twitter Share

7. Twitter Stream

8. Youtube Channel

You can add a button for subscribing to your Youtube channels. It’s very similar to Google+ buttons that I described in another article. Make sure you find out your Youtube channel ID and paste it here – https://developers.google.com/youtube/youtube_subscribe_button


How to add Facebook & Google+ buttons to your WordPress blog

Posted by Aleksey on Jan 23, 2015 in Web

It’s pretty easy to integrate WordPress with Facebook and Google+, especially if you host your own WordPress. If you use a free version of WordPress hosted on WordPress.com, it provides simple integration out of box, but it doesn’t have some features such as Follow button.

First, let’s review types of Facebook buttons:

All these buttons here are created without using any WordPress plugins. The code is generated on Facebook developers page and added here.

1. Facebook Share button, obvious

share this post on the Facebook page of a visitor of this site:

2. Facebook Like button

similar to a share button, it will share this post on Facebook timeline of a visitor’s Facebook page. Unlike in case of sharing, the visitor doesn’t have a chance to add a comment.

3. Facebook Follow button

this one will let visitor of this site to follow the author of this site


4. Facebook page feed

The page feed can only be used to display a page timeline, but not your personal profile timeline:

Review Google+ buttons

Just like Facebook buttons, these buttons are created without using any WordPress plugins. The code is generated on Google+ developers page and added here.

1. Share post

2. Add +1

3. Folow


4. Stream

Google+ doesn’t provide an easy way to create a stream widget without programming.

Step-by-step instructions for adding FB buttons to your WordPress site

Note: it doesn’t work if you use a free WordPress.com site

1. Create and publish a FB application

Go to https://developers.facebook.com, and select My Apps -> Add a New App menu, then select Website button:

Screen Shot 2015-01-31 at 12.49.58 PM

Enter app name “My blog test” and Create New Facebook App ID, then confirm your entry and Skip Quick Start when it shows up. It should look like this:

Screen Shot 2015-01-31 at 1.15.48 PM


Click on Settings menu on the left side and fill out the Contact Email field. The save changes and go to Status & Review menu item. There is a switch next to “Do you want to make this app and all its live features available to the general public?” text, it says NO. You should be able to click it and change to YES. You application should be published, and you should see this screen:

Screen Shot 2015-01-31 at 1.34.40 PM


IMPORTANT: if there is no solid green circle next to the name of the app, it’s not published

2. Generate FB Share & Like buttons and add to your blog

All buttons can be generated from this page: https://developers.facebook.com/docs/plugins

You will need a working link to your blog post before generating buttons code. If you don’t publish your blog post before generating a button, Facebook may cache error 404 – page not found, and it will take time or additional steps to resolve it. That’s why you should go to your WordPress Admin page and create a new blog post. Then publish it, and copy its URL from the screen that may look like this:

Screen Shot 2015-01-31 at 1.42.38 PM

Copy that page URL and go back to the Facebook Social Plugins page. Choose the Like button first, and  paste your Blog post  URL into “URL to like” field. It will look like this:

Screen Shot 2015-01-31 at 1.45.37 PM

Click on Get Code and select IFRAME tab. It will look like this:

Screen Shot 2015-01-31 at 1.47.03 PM

Copy that code and go to WordPress admin page now. Select your blog post and click on “Text” editing mode. Paste the code. It will look like this:

Screen Shot 2015-01-31 at 1.49.23 PM

Now, publish/update that page. When you view your blog page, the buttons should be visible and you should be able to like and share your blog post on FB.


3. Generate FB Follow button

The follow button can be generated here: https://developers.facebook.com/docs/plugins/follow-button

Just fill out the Profile URL with a link to your own FB profile, such as https://www.facebook.com/dmitriyev. Then follow the same step as for Like/Share buttons and get the code for IFRAME. Then insert it into your WordPress blog. It’s probably better to add Follow button to a static home or about page of your blog, but it’s okay if it shows up in each blog post too.

IMPORTANT: if you get Error “Following is not enabled for …” viewing your page, it most likely means that your FB privacy setting don’t allow to view your public posts. You can change it as described here: https://www.facebook.com/help/201148673283205/

4. Generate FB stream widget

This one is different, because it’s important to remember, it has to point to a FB Page, not your FB profile. Hence, make sure you have a page created, for example https://www.facebook.com/pages/My-test-character/1395747217397542. Make sure the page is public in Facebook, you may want to double check that it’s accessible in Incognito mode in Chrome or your favorite browser.

Now, goto https://developers.facebook.com/docs/plugins/like-box-for-pages and paste the page URL into “Facebook Page URL” field, generate the code for IFRAME and paste it to your WP blog again.


Step-by-step instructions for adding G+ buttons to your WordPress site

Note: it doesn’t work if you use a free WordPress.com site

1. Generate G+ Share & +1 buttons and add to your blog

The G+ Share buttons can be generated using these links:



It pretty easy to do. Just like in case with FB, you should paste the URL to your blog post into “URL to share” field, and you should see code that looks like this:
<!-- Place this tag in your head or just before your close body tag. -->
<script src="https://apis.google.com/js/platform.js" async defer></script>
<!-- Place this tag where you want the share button to render. -->
<div class="g-plus" data-action="share" data-href="http://dmitriyev.name/fb-g-buttons/"></div>

As you can see, this code needs to be placed in two different places. You need to customize your WP template in order to add The <script> to the rifght place. Goto WordPress Admin Dashboard page, and select Appearance -> Edit menu item. Then Click on Header template on the right side bar. You will see PHP code that may look like this:

Screen Shot 2015-01-31 at 6.35.21 PM


Then paste this code before </head> tag:

<!-- Place this tag in your head or just before your close body tag. -->
<script src="https://apis.google.com/js/platform.js" async defer></script>

Update your post, and see if it works now.


2. Generate G+ Follow button

The G+ follow button is very similar to G+ Share and +1 buttons. You just need to specify what profile you would like the users to follow. Use this link, and follow the same instructions as for G+ share button above:



Done! Make sure to test it all now. 




It’s a conundrum

Posted by Aleksey on Sep 17, 2014 in Uncategorized

It’s been a lot of fun working on EdgeRocket venture. In the last 6 months, we have built a first version of our product, and got our first customers. There is much more on the backlog, and not much time to write new blog posts. I do have a lot of things to share, and I’m afraid they will fade out in my memory by the time I actually find a moment to write them up. It’s a conundrum. 


DIY Simple laptop Karaoke system

Posted by Aleksey on Dec 26, 2013 in Audio

My in-laws asked me to research Karaoke players for them. There were some hidden nuances. The system should be able to work for Russian songs, and should also score the participants. I looked at several multi-format players online including Vocopro, but since I never used any of them, I had no idea if they would work with different Karaoke formats. The disks are so last century anyway. What can I do using software and online sources only? After some research, I came up with a solution that uses pretty much any laptop/desktop, a hardware mixer, and your regular home theater components like a receiver and a TV. Here is what I have done.


The most interesting part of the whole system is a audio mixer. It has to combine the audio from a mic or two, mix it with the Karaoke audio stream coming out of the laptop, feed it to the amplifier (home theater receiver), and also feed the voice only signal back to the laptop for scoring. That last part puzzled me, because I could not find any useful guides online. I came to the conclusion that I would need an audio mixer with 2 buses in order to route the voice signal separately. Here is the mixer I chose, Behringer Xenyx 802. I bought it on Craigslist for $40:



I bought a cheap dynamic microphone at Bestbuy for $15 or so. Keep in mind that this mic would not work as a computer mic well. It would need a pre-amp or something like that. It’s not a problem for this setup, because the mixer has a built-in pre-amp. It comes with 1/4″ (6.35mm) mono connector, which is what’s needed for connecting it to the mixer:



For my testing purpose, I used Creative D200 speaker with 3.5mm audio jack as an input. The home theater receiver will need a different type of connection, such as 2 RCA audio jacks. Here is my speaker for testing:



Any laptop or desktop with a soundcard should work fine, but there is a trick if you use a laptop. Many new laptops have an audio output combined with a microphone input in one socket. This is what’s in my Macbook Pro 13″ laptop. It requires a special adapter to split it into 2 different female sockets. I decided to use an HP laptop with a line out socket and a separate one for microphone only.


Big Screen TV

A large TV is good for parties, but isn’t strictly required, because you can use a laptop screen just fine. However, it’s more fun to have a big screen hooked up. If you know how to connect a TV to your laptop, it’s not any different in this case. I used an RGB video connection to hook up an LCD TV, and configured the laptop to mirror displays. An HDMI or another connection should work fine, as long as it doesn’t disable the audio output. It may happen if you use an HDMI cable.

Cables and Adapters

I used several cables and adapters to wire the mixer to the computer and speakers. Here is a stereo 3.5mm male to a stereo 1/4″ male cable (using adapter):


here is a stereo 3.5mm male on one end and two mono 1/4″ male plugs on the other end (you may notice RCA adapters, because it’s what I had in stock):


Here is effectively the same cable, but without extra RCA adapters:


Wiring steps

1) Connect speakers to the mixer

I used a wire with two 1/4″ mono plugs on one side and 3.5″ stereo plug on the other side. Make sure to set all level knobs to the minimum. At this point, I think it’s okay to power the mixer, because I want to monitor the sound, but some people may say it’s not a good idea yet. I’ve done it anyway. I used the main output to wire the speaker:


2) Connect the mic

I connected the mic to the line 1 like that:


At this point it’s a good idea to get the audio level tested. Add some volume to the main output, and to the mic’s level. Say “check, 1, 2, 3″ until you are happy with what you get from the speakers. Don’t forget about the on/off switch on the mic, it should be on now.

3) Connect an audio output line from the laptop to the mixer

I used a cable with 3.5mm plug on one side and two mono 1/4” plug on the other side to connect the laptop output to the line 3/4 in the mixer:


Now, you can play any song on the laptop (use any music player, I will tell you about Karaoke software later) and adjust mixer levels to make it sound good using the level knob for the line 3/4 in the mixer. Make sure you can still hear the voice if you say “check” into the mic. You may need to adjust the mic’s gain knob, level 1, level 3/4, and main level knobs to get a decent result.

4) Connect the FX output from the mixer to the microphone input in the laptop

This is the tricky part that I could not find explained online much. In order for Karaoke software to score singers, it needs to get an audio feed from the mic back to the laptop. That’s why I used the mixer with 2 buses. I want to split the voice only audio coming  from the microphone(s), and send it to the computer and to the speakers at the same time. The Xenyx 802 is one of the cheapest mixers that has a simple routing option for this task. I used the FX output to send the voice signal using a cable with a stereo 1/4″ plug to connect to the mixer’s FX out, and 3.5mm plug to connect to the microphone input in the laptop. See that greenish cable below:


5) Test the FX audio feed

Now, you should be able to turn the FX knob on the mic’s line in the mixer to produce audio feed that will go back to the laptop. You may use system setting in the operating system on your laptop to verify that the audio is getting into the laptop. Her is an example of the screen I used on a Windows 7 machine:

Fullscreen capture 12262013 32621 PM


Now the whole system should look like this:



Karaoke Software

I haven’t tried a lot of software Karaoke packages. I looked at a few and selected two of them to test: KaraokeParty.com for my US/English needs, and Karaoke.ru for my Russian friends. I haven’t tested these sites for malware. The Russian one might have tried some suspicious port scans, but I did not have time to deal with that, and just ignored it for now. Use them at your own risk.

Here is a screenshot of a song. The scoring is working, it’s low, because of my vocal skills, but the system should be working fine:

Fullscreen capture 12262013 34057 PM


Keep in mind that if you decide to record your voice and music at the same time, you should mix the FX music or record using the main output.

Next steps:

– You may use the second microphone to sing a duet. I may try a condenser mic to see how much difference it makes. The dynamic one was awesome at a very noisy party, because it picked up the singer’s voice perfectly, and filtered out ambient noises.

– I plan to get an adapter that I can use with my Macbook Pro. I have to buy one online, because I could not find it at any local stores. Here it is:





Colorado GiveCamp – pros and cons of using Orchard CMS

Posted by Aleksey on Apr 28, 2013 in Software Development

We tried to use Orchard CMS in the Colorado GiveCamp Boulder 2013. Here are quick notes of the pros and cons that we identified:

– It’s .NET based that we hoped would be easy to customize with the skills we had
– Easy install on DiscountASP.com
– Easy to configure membership features for users
– Open source license, free

– Difficult to find free responsive modern themes
– Some plugins are only available in one flavor, not many options

– Not as popular as WP, not as much information online


I ditched cable TV

Posted by Aleksey on Oct 2, 2010 in Uncategorized

I tried to ditch cable TV a couple of times, but I kept going back for different reasons. I am trying it again now. This time, I got a few more tools at my disposal:

  • Channel Master DVR and HDTV antenna
  • Netflix on Wii
  • iPad with VLC, and ABC players

I don’t watch a lot of sports, but my wife and I like TV series, and shows such as “all you can dance”, or whatever the right name is. We also want to make it pretty simple to record and watch shows. A home theater PC (or Mac) would probably work, but in order to make it simple, it would either be expensive or require accessories, and it still would not be perfect in my experience. For example, if you watch ABC shows online, you get them 1 day delayed, and if you do it on a Windows based PC, the ads seem to turn off the full-screen mode. That’s why I started looking for HDTV over the air. Here is what I got for that:

Channel Master CM-7000PAL DVR (detailed information)

It’s just like your cable/satellite DVR, but it receives HDTV signal from an antenna. It’s free, and it doesn’t require subscription like TiVo. Why would I pay $12/mo for a TiVo subscription just to get a few air channels? I am a happy camper so far. The CM DVR works as advertised. I got a dozen or so local channels including PBS, ABC, CBS, FOX and etc. You can see what channels you can get on antennaweb.org

CM-2016 digital HDTV antenna (detailed information)

This seems to be a good antenna, I tried a cheaper and simpler one. It worked, but it did not seem to have a super reliable reception.

Netflix streaming on Nintendo Wii

I bought a Wii console when it came out a few years ago. It can now be used to stream Netflix videos, which is working fine. It may not have super HD quality, but it’s enough to watch movies that don’t rely on special effects only. Netflix has a decent collection of movies that can be watched instantly. My daughter loves it, because there are a lot of cartoons. They don’t have annoying ads either. It bothers me when the networks push their commercials even during shows for toddlers.

iPad and etc.

The ABC app is cool! In fact, I think it’s better than what they have online, because it seems to have fewer problems with ads and full-screen mode (at least in my experience). My wife keeps catching up with Grey’s anatomy episodes. There is also VLC player for iPad. It allows you to upload your AVI’s/etc and watch them on iPad – very nice.

That’s all. Nothing super fancy, but very doable on a budget.

Tags: ,


Agilizing my house remodeling

Posted by Aleksey on Sep 30, 2010 in Agile

My wife and I bought a house recently. Considering that it’s almost 2 decades old, it’s not in a bad shape. An inspector found a few problems and recommended that if we remodel anything, we should start and finish one thing completely so we can enjoy it. Isn’t it just like WIP limit to me? Well, should I come up with a backlog then? As a home owner, I can remodel my master bathroom, so I don’t have a problem with tile in the shower, and I can enjoy the new modern design.

We decided to do it, and completed our first remodeling story a couple of weeks ago. We love and enjoy our new simple and stylish bathroom design!

Tags: , ,


My iPad Crashlog

Posted by Aleksey on Jul 14, 2010 in Software Development, Web

I’ve had my iPad for a couple of months now. Somehow, before I got it, I had Utopian expectations about the AppStore apps. I thought they would never crash, or leak memory. Wrong, while the iPad platform is impressive, the apps are still written by humans, and they crash! They die silently, not a blue screen of death, not an exception window, nothing. You’d have to dig up the crash log in Xcode to get a report. I counted about 14-15 different apps that crashed on my iPad since I got it:

Air Hockey Gold
B&N eReader
Gaia Lite
Lose It!
LowMemory (not an app)
MobileSafari (oops!)
mediaserverd (is it a built in one)
The most annoying one was Foursquare, it kept crashing and it was hard to figure out how to make it to work at some point. I should have given up on Foursquare altogether.
What is the root cause? I am not talking about the root cause for the specific issues, I am talking about general quality. I think it could be iPhone Gold Rush symptoms. The developers rush to release their apps, they cut the corners, you know, the usual death-march development issue. Apple, despite their very long approval process, simply cannot be the last-resort QA authority.
Hey iPhone and iPad app developers, please test your apps. Run the Memory Leaks detection in your Xcode, use some (or better a ton of)  automated tests, do it now!

Tags: , , , ,


Camping with iPad, Part 3

Posted by Aleksey on Jun 27, 2010 in Uncategorized

According to the spec, iPad has a magnetometer (digital compass) sensor. I did not have much time to calibrate Magnetometer compass app that I had downloaded before the trip. For some reason, it did not seem to work properly, or I was not patient enough to figure it out. Anyway, we did not really need it.

By the way, another interesting app is  uPackingList (free, iPhone version only). It seems to to be either for the total bean-counters or for someone who is going on a long trip and needs to get everything perfectly right. Not me. Hence, I played with it, but did not use it.

Finally, there seems to be a useful app – Gia Gps Lite (free, iPad version). It worked well. I am not an expert user of the topo maps, but this one seems to be pretty intuitive. It allows to take a snapshot of the area in advance so you can use it offline. It show real time GPS coordinates, and provides a reasonably good bearing. I wish it allowed copying or saving the current coordinates. I could not figure out how to do that and had to retype it manually to send them to friends

To summarize my short overview of a few apps, here is the list:

  • Gia Gps Lite (free, iPad version)
  • MagnetMeter (free for now, iPad version)
  • Waze (free, iPad version)
  • built-in maps app
  • uPackingList (free, iPhone version only)

Tags: , , , , , ,

Copyright © 2015 Alexey Dmitriyev's blog All rights reserved. Theme by Laptop Geek.