Show Hours:  Mon, April 6             8:00 - 4:00
Conference Hours: Mon, April 6     8:30 - 4:50
Cloud Technology,Big Data, Low Latency, Networks, Data Cen-
ters, APIs, Scalability, cost savings for the global financial markets.
Leading Wall Street IT directorsand vendor technology experts
will speak on the program.
Speakers will cover 2015 Cloud, HPCand the latest programs
to increase speed, put-through, and reduce costs.
Full conference program includesindustry luncheon, general
sessions, drill down sessions, exhibits, post show receptions.
Don’t have time for the full Conference? Attend the free
Show. Register in advance at: www.flaggmgmt.com/linux
12
th Annual 
2015HPC 
FOR
W
ALL
S
TREET
– 
C
LOUD
T
ECHNOLOGY
April 6, 2015 (Monday)
Roosevelt Hotel, NYC
Madison Ave and 45th St, next to Grand Central Station
2015 Sponsors
Visit:
www.flaggmgmt.com/linux
Plan to Attend: 
2015 HPC for Wall Street will deliver 
top-notch content and connections.
Low-cost conference at $295. save $100.
Full program, including lunch.
Free Conference Registration for quali-
fied end users. Register online as end
user.
Show & Conference:  
Flagg Management Inc
353 Lexington Avenue,
New York 10016
(212) 286 0333  
fax: (212) 286 0086    
flaggmgmt@msn.com
F
r
e
e
C
o
n
f
e
r
e
n
c
e
R
e
g
i
s
t
r
a
t
i
o
n
f
o
r
Q
u
a
l
i
f
i
e
d
E
n
d
U
s
e
r
s
.
G
o
O
n
l
i
n
e
-
w
w
w
.
f
l
a
g
g
m
g
m
t
.
c
o
m
/
l
i
n
u
x
Rick Aiere
Architect Specialty, 
AIG
Bernard S Donefer
Associate Director,
Baruch College
Lee Fisher
VP Marketing, Redline
Trading Solutions
Jeffrey Scheel
Senior Technical Staff,
IBM Linux Tech Center
Dave Malik
Senior Director, 
Advanced Services, 
Cisco Systems
Ken Barnes
SVP Corp Dev, Options
Information Technology
Dave Weber
Global Financial Services
Segment Leader, Lenovo
Terry Keene
CEO, 
iSys
Fadi Gebara
Sr Manager, 
IBM Research
Davor Frank
Sr Solutions Architect,
Solarflare
Jeremy Eder
Perf Engineering, 
Red Hat
Charles Milo
Enterprise Technical
Specialist, Intel
Matt Smith
Sol Architect, 
Red Hat
Dino Vitale
Dir, Morgan Stanley
Quality Assurance &
Production Mgmt
Harvey Stein
Head of Credit Risk
Modeling, 
Bloomberg
Mike Blalock
Global Sales Director,
Intel 
Shagun Bali
Analyst, 
TABB Group
David B. Weiss
Sr Analyst, 
Aite
Phil Albinus
Editor, Traders Maga-
zine, SourceMedia
Rob Krugman
VP Digital Strategy,
Broadridge Fin Sols
Ed Turkel
Mgr WW HPC Mkting,
Hewlett-Packard 
Paul Jameson
Managing Director,
Global Fin Services,
Cisco Systems
Convert from pdf to html - Convert PDF to html files in C#.net, ASP.NET MVC, WinForms, WPF application
How to Convert PDF to HTML Webpage with C# PDF Conversion SDK
convert pdf to url online; how to convert pdf to html code
Convert from pdf to html - VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.net, ASP.NET MVC, WinForms, WPF application
PDF to HTML Webpage Converter SDK for VB.NET PDF to HTML Conversion
converting pdf to html code; convert pdf to web page
32
/  MARCH 2015  /  WWW.LINUXJOURNAL.COM
Nmap—Not Just 
for Evil!
If SSH is the Swiss Army knife of the 
system administration world, Nmap 
is a box of dynamite. It’s really 
easy to misuse dynamite and blow 
your foot off, but it’s also a very 
powerful tool that can do jobs that 
are impossible without it.
When most people think of  
Nmap, they think of scanning 
servers, looking for open ports  
to attack. Through the years, 
however, that same ability is 
incredibly useful when you’re in 
charge of the server or computer  
IN QUESTION 7HETHER YOU RE TRYING
to figure out what kind of server  
is using a specific IP address in  
your network or trying to lock 
down a new NAS device, scanning 
networks is incredibly useful.
Figure 1 shows a network scan 
OF MY 1.!0 .!3 4HE ONLY THING )
use the unit for is NFS and SMB file 
sharing, but as you can tell, it has 
a ton of ports wide open. Without 
Nmap, it would be difficult to figure 
out what the machine was running.
Another incredibly useful way 
to use Nmap is to scan a network. 
You don’t even have to have root 
access for that, and it’s as simple 
as specifying the network block you 
want to scan. For example, typing:
nmap 192.168.1.0/24
WILL SCANTHE ENTIRE RANGE OF F 
possible IP addresses on my local 
network and let me know which  
are pingable, along with which 
ports are open. If you’ve just 
plugged in a new piece of 
hardware, but don’t know what  
IP address it grabbed via DHCP, 
Nmap is priceless. For example,  
the above command revealed this 
on my network:
Nmap scan report for  
´TIVO-8480001903CCDDB.brainofshawn.com (192.168.1.220) 
Host is up (0.0083s latency). 
Not shown: 995 filtered ports 
PORT     STATE  SERVICE 
80/tcp   open   http 
443/tcp  open   https 
2190/tcp open   tivoconnect 
2191/tcp open   tvbus 
9080/tcp closed glrpc
[
EDITORS' CHOICE 
]
EDITORS’
CHOICE
Online Convert PDF to HTML5 files. Best free online PDF html
PDF to HTML converter library control is a 100% clean .NET document image solution, which is designed to help .NET developers convert PDF to HTML webpage using
convert pdf form to html form; convert pdf to html
VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.
PDF from RTF. Create PDF from Text. PDF Export. Convert PDF to Word (.docx). Convert PDF to Tiff. Convert PDF to HTML. Convert PDF to
convert pdf to html code c#; convert pdf to html code online
WWW.LINUXJOURNAL.COM  /  MARCH 2015  /  
33
This not only tells me the address 
of my new Tivo unit, but it also 
shows me what ports it has open. 
Thanks to its reliability, usability 
and borderline black hat abilities, 
.MAP GETS THIS MONTHS %DITORS
Choice award. It’s not a new 
program, but if you’re a Linux  
user, you should be using it!
—SHAWN POWERS
WWW.LINUXJOURNAL.COM  /  MARCH 2015  /  
33
Figure 1. Network Scan
VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
VB.NET PDF - Convert PDF to MS Office Word in VB.NET. VB.NET Tutorial for How to Convert PDF to Word (.docx) Document in VB.NET. Best
converting pdfs to html; how to add pdf to website
C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
C# PDF - Convert PDF to JPEG in C#.NET. C#.NET PDF to JPEG Converting & Conversion Control. Convert PDF to JPEG Using C#.NET. Add necessary references:
change pdf to html format; convert pdf to html file
COLUMNS
34
/  MARCH 2015  /  WWW.LINUXJOURNAL.COM
WORK THE SHELL
DAVE TAYLOR
Let’s Play  
Cards with  
Acey-Deucey,  
Part II
Dave adds the necessary code to turn a demo into a playable 
game, complete with some rule variants.
In my last article, I started 
developing a simple card game 
called Acey-Deucey, in which you 
deal two cards face up, then bet  
on whether the next card is going 
to be between those two in rank 
value. In other words, if a 5 of 
diamonds and a jack of spades 
were flipped up, the bet would be 
whether the next card was going  
to be between a 6 and a 10.
I also dug into the math too, if 
you missed it, because this is a great 
game for understanding odds and 
probability. Remember, any given card 
has a 1 in 52 chance of appearing, 
and because two cards already have 
been exposed, that means any given 
card actually has 1:50 odds.
For the example above, there are 
four 6s, four 7s, 8s, 9s and 10s, 
MEANING THAT THERE ARE E     
    OR A A   CHANCE E THAT
the next card flipped up will indeed 
be between the two exposed cards. 
Make that 5 of diamonds an ace of 
diamonds, and the odds get crazy 
good: 80%. I’d take those odds!
The math will factor into the 
script because you actually can  
have the game suggest what to  
do based on the odds. The greater 
the spread, the better the odds—
easy enough.
I ended my last article with the 
game being able to shuffle and deal 
three cards: two exposed and one 
hidden. Running the program with 
VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.
VB.NET PDF - Convert PDF to TIFF Using VB in VB.NET. Free VB.NET Guide to Render and Convert PDF Document to TIFF in Visual Basic Class.
embed pdf to website; convert pdf table to html
C# PDF Convert to SVG SDK: Convert PDF to SVG files in C#.net, ASP
PDFDocument pdf = new PDFDocument(@"C:\input.pdf"); pdf.ConvertToVectorImages( ContextType.SVG, @"C:\demoOutput Description: Convert to html/svg files and
convert fillable pdf to html form; convert pdf to webpage
WWW.LINUXJOURNAL.COM  /  MARCH 2015  /  
35
COLUMNS
WORK THE SHELL
just that code results in this:
$ sh acey-deucey.sh 
I've dealt: 
Ace of Hearts 
Queen of Diamonds 
$
There’s not much to do yet, 
because there’s no game logic, so 
let’s add some.
Turning the Code into a  
Playable Game
To start, let’s initialize and deal out 
the cards. With the highly mnemonic 
function names already assigned, it’s 
QUITEREADABLE
initializeDeck 
shuffleDeck 
dealCards 
echo "Do you think the next card will be between? (y/n/q) " 
read answer
This is good for a start, but as I 
mentioned earlier with the math 
discussion, it can be a bit more 
helpful, particularly knowing that the 
dealCards
function ensures that the 
two cards displayed are in order of 
increasing rank, which means that this 
is a darn helpful addition:
splitValue=$(( $rank2 - $rank1 ))
More important, it also means 
that the game can identify situations 
where there’s no point in betting, 
like when a 7 of diamonds and 8 
of clubs are dealt out. There are no 
cards that can be between them. 
This is added with a simple test:
if [ $splitValue -le 1 ] ; then 
echo "No point in betting when you can't win!" 
continue 
fi
The third card already has 
been “dealt” within the function 
dealCards
, its rank calculated (as 
$rank3
) and its display name set (as 
$cardname3
). So, the test to see if the 
new card is or isn’t between the two 
existing ranks is the next section of the 
More important, it also means that the game  
can identify situations where there’s no point  
in betting, like when a 7 of diamonds and 8 of 
clubs are dealt out.
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
C#.NET PDF SDK - Convert PDF to TIFF in C#.NET. Online C# Tutorial for How to Convert PDF File to Tiff Image File with .NET XDoc.PDF Control in C#.NET Class.
embed pdf into html; convert pdf to web page online
C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
C#.NET PDF SDK - Convert PDF to Word in C#.NET. C#.NET DLLs and Demo Code: Convert PDF to Word Document in C#.NET Project. Add necessary references:
convert pdf to html email; convert pdf link to html
COLUMNS
36
/  MARCH 2015  /  WWW.LINUXJOURNAL.COM
WORK THE SHELL
CODEREQUIRED ANDITTOOISEASY
if [ $rank3 -gt $rank1 -a $rank3 -lt $rank2 ] ; then # winner! 
winner=1 
else 
winner=0 
fi
So you can pick three cards randomly 
out of the deck, you can calculate their 
ranks and display names, and you can 
prompt the user to guess whether the 
next card will or won’t be between the 
two, then test to see if they were right.
What’s left? Scoring. And, that’s 
done with the 
$won
variable, which is 
incremented in a conditional statement 
that appears immediately after the test to 
see if the third card is a 
$winner
or not:
if [ $winner -eq 1 -a "$answer" = "y" ] ; then 
echo "You bet that it would be between the two and it is. 
You WIN!" 
won=$(( $won + 1 )) 
elif [ $winner -eq 0 -a "$answer" = "n" ] ; then 
echo "You bet that it would not be between the two and  
it isn't. You WIN!" 
won=$(( $won + 1 )) 
else 
echo "Bad betting strategy. You lose." 
fi
You’ll notice that in this 
implementation of Acey-Deucey, I’m 
allowing the player to win if he or she 
bet the card won’t be between the 
two, and it turns out that it isn’t. This 
is probably too generous, because all 
you need to do is pick the more likely 
scenario, which is to say any situation 
where the spread is six cards or less (like 
at the very beginning of this article).
3TILL ITSNOT6EGASOR!TLANTIC#ITY ITS
just a shell script, right? So I’ll be nice. 
If you’d rather not offer that option, 
simply change the message in the first 
elif
conditional code block and skip 
incrementing the 
$won
variable.
All that’s left to do is to wrap the 
entire code block in a big loop that’ll run 
FOREVER ANDUSETHATSTANDARDTECHNIQUE
of shell script programmers worldwide:
while [ /bin/true ] ; do
So you can pick three cards randomly out of the 
deck, you can calculate their ranks and display 
names, and you can prompt the user to guess 
whether the next card will or won’t be between 
the two, then test to see if they were right.
COLUMNS
WWW.LINUXJOURNAL.COM  /  MARCH 2015  /  
37
WORK THE SHELL
You probably wondered why /bin/true  
existed in Linux, didn’t you? So that’s 
the first line of the main code block, 
and let’s increment the 
$games
variable in the last line of the block:
games=$(( games + 1 ))
But there’s one more fragment 
needed, and that’s the test to see if 
the user guessed that the third card 
would or would not be between the 
two displayed cards, or if the user 
QUITTHEGAME)NTHELATTERSITUATION
it’s time to display some stats. That’s 
easy enough, and it turns out that 
you can just leave 
$answer
alone  
for the yes/no answer:
if [ "$answer" = "q" ] ; then 
echo "You played $games games and won $won times." 
exit 0 
fi
)NFACT YOULLNEVERQUITTHEGAME
by falling out of the while loop, but 
that makes sense since the conditional 
test of /bin/true is, well, always true.
Stitch all these fragments together 
and you have a game, by George!
$ sh acey-deucey.sh 
I've dealt: 
6 of Hearts 
9 of Clubs 
The spread is 3. Do you think the next card will  
be between them? (y/n/q) n 
I picked: 9 of Hearts 
You bet that it would not be between the two  
and it isn't. You WIN! 
I've dealt: 
Ace of Hearts 
7 of Spades 
The spread is 6. Do you think the next card will  
be between them? (y/n/q) y 
I picked: 3 of Spades 
You bet that it would be between the two  
and it is. You WIN! 
I've dealt: 
7 of Spades 
10 of Spades 
The spread is 3. Do you think the next card will  
be between them? (y/n/q) q 
You played 2 games and won 2 times. 
$
!PERFECTSCORE.ICE,AS6EGAS
here I come!
Q
Dave Taylor has been hacking shell scripts for more than 30 
years—really. He’s the author of the popular 
W
i
c
k
e
d
C
o
o
l
S
h
e
l
l
S
c
r
i
p
t
s
(and just completed a 10th anniversary revision 
to the book, coming very soon from O’Reilly and NoStarch 
Press). He can be found on Twitter as @DaveTaylor and more 
generally at his tech site http://www.AskDaveTaylor.com.
Send comments or feedback via  
http://www.linuxjournal.com/contact  
or to ljeditor@linuxjournal.com.
38
/  MARCH 2015  /  WWW.LINUXJOURNAL.COM
COLUMNS
HACK AND /
Libreboot on 
an X60, Part I: 
the Setup
Find out what Libreboot is and why you should dust off that old 
ThinkPad and give it a fresh BIOS.
Recently I wrote a review  
for the Linux Journal Web site  
on the Purism Librem 15 laptop 
(http://www.linuxjournal.com/
content/purism-librem-15-review). 
The goal of this laptop is to provide a 
piece of modern hardware that can run 
100% free software not just for the OS, 
but also all device drivers and firmware 
up to and including the BIOS. At the 
time I’m writing this, the last major 
sticking point along those lines for the 
PROJECTISTHE)NTEL-ANAGEMENT%NGINE
a proprietary piece of firmware that is 
REQUIREDTOBOOTUPMODERNSYSTEMS)N
that review, I wrote the following:
It turns out it’s rather difficult to 
have a fully free software laptop. 
%VENIFYOUCANPICKHARDWARETHAT
can use free software drivers, there’s 
still that pesky BIOS. While coreboot 
and libreboot are great free software 
BIOS implementations, to get it on 
MANYLAPTOPSREQUIRESHARDWARE
BIOS chip flashing with pomona 
clips—the kind of thing I wasn’t 
ready to brick a laptop to try. Like 
other privacy advocates, I turned 
to the old ThinkPad X60 laptop 
series. While it’s old, underpowered 
and has a low-res screen by today’s 
standards, the keyboard is great and 
more important, you could flash its 
BIOS with coreboot or libreboot from 
within Linux itself—no hardware 
HACKINGREQUIRED3OTHATSWHAT)DID
Although the Purism 15 laptop 
seems to be a viable choice for 
those who want a free software 
laptop, at the time of this writing, 
the crowdfunding campaign is still in 
process, and even after it completes, 
KYLE RANKIN
WWW.LINUXJOURNAL.COM  /  MARCH 2015  /  
39
COLUMNS
HACK AND /
it will take some time until they ship. 
Plus, a new laptop like that doesn’t 
come cheap, and many people who 
may want a laptop that runs 100% 
FREESOFTWAREMAYNOTHAVE  
to spend on it. I’ve been able to 
find used ThinkPad X60 laptops on 
auction sites as cheap as $30, so if 
you are willing to live with some of 
the limitations of hardware that old, 
it is an inexpensive route to a decent 
machine that runs only free software.
The first time I attempted to flash 
an X60 with coreboot, it was one of 
the more difficult things I’d done with 
Linux to the point that I wasn’t ever 
planning on writing it up in Linux 
Journal. More recently, I tried again, 
only this time with Libreboot—a 
coreboot BIOS distribution that 
has all of the proprietary software 
removed. The process was greatly 
simplified and automated to the point 
where I feel relatively comfortable 
recommending others try it (with a 
few caveats I’ll explain later).
In my next couple articles, I’m 
going to walk through the journey 
that brought me to the X60 running 
Libreboot that I’m using to type this 
column. In this first part, I discuss the 
setup, including what Libreboot is, 
what hardware it currently supports 
and some of the risks around flashing 
your BIOS. If I haven’t scared you 
off by the end of this article, in 
future articles, I’ll cover how to 
download Libreboot and verify its 
integrity, how to flash the BIOS itself 
in detail with sample script output 
and how to modify the default GRUB 
bootloader. If you can’t wait until 
next month, a lot of my process 
is based on the excellent guide 
provided at https://github.com/
bibanon/Coreboot-ThinkPads/wiki/
ThinkPad-X60.
Free as in BIOS
To understand Libreboot, it helps to 
understand coreboot first. Coreboot 
is an open-source BIOS replacement. 
With coreboot, you can replace a 
proprietary BIOS with open-source 
I’ve been able to find used ThinkPad X60 laptops 
on auction sites as cheap as $30, so if you are 
willing to live with some of the limitaions of  
hardware that old, it is an inexpensive route to  
a decent machine that runs only free software.
40
/  MARCH 2015  /  WWW.LINUXJOURNAL.COM
software on supported hardware 
with a minimal amount of proprietary 
firmware included to support things 
like video hardware in the BIOS or the 
)NTEL-ANAGEMENT%NGINEONNEWER
hardware. Coreboot doesn’t currently 
support all hardware out there, 
although the list continues to grow, 
and you might be surprised to know 
that Chromebooks ship with coreboot 
by default. To install coreboot on 
much of the supported hardware, you 
must use external hardware including 
a connector like an 8-pin Pomona 
clip to reflash the BIOS chip. That’s 
pretty intense for a lot of people, but 
fortunately, some hardware including 
the X60, X60s, X60 tablet and T60 
can be flashed completely in software.
When I first attempted to flash an 
X60 with coreboot a few months ago, 
the process involved disassembling the 
laptop to inspect the underside of the 
motherboard with a magnifying glass 
so I could determine which of two BIOS 
chip types I had. I used that information 
to hand-patch the flashrom software 
with custom code and compiled a 
special version just to unlock my BIOS. 
Then I downloaded, configured and 
compiled a custom coreboot BIOS 
image for my laptop and went through 
a two-phase flash. In the end, I got it 
working; however, I needed to strip 
out and include the proprietary video 
firmware from my proprietary BIOS 
to get any video at boot time—useful 
when you want to select between hard 
drive and USB boot.
Libreboot is a custom distribution of 
coreboot that removes all proprietary 
software from the BIOS. Instead of 
proprietary BIOS boot selector, for 
instance, Libreboot boots straight into 
its own GRUB menu that you can use 
to load your own underlying OS. In 
addition, Libreboot has automated a 
lot of the difficult processes around 
installing coreboot and provides 
custom scripts and pre-build ROMs for 
its officially supported hardware.
But, why would you want a free 
software BIOS? For those who 
fully support the Free Software 
Foundation and the principles of 
free software, you don’t need any 
further justification. Although I have 
traditionally taken a more pragmatic 
approach to the free vs. open-source 
software debate, I’ve recently been 
more motivated to seek out free 
software whenever I can find it as I 
COLUMNS
HACK AND /
Libreboot is a custom distribution of coreboot that 
removes all proprietary software from the BIOS.
Documents you may be interested
Documents you may be interested