Nov
12
2008
Continuing our thoughts on RPM, why package management?
At first glance you may say to yourself, “I can manage this myself. It’s not that many components …” In fact, for something as small as, say, cat, which has one executable and one man page, this may be so. But consider, say, PHP, which has a mountain of modules, dependencies. Keeping track of it all would be tough, if not impossible.
Package management makes it all easier. By letting a program maintain the information about the binaries, their configuration files, and everything else about them, you can identify which ones are installed, remove them easily or upgrade them readily, as well.
Installation becomes a snap. You select what you want, and ask the system to take care of the dirty work for you. Unpack the program, ensure that there is space, place things in the right order, and set them up for you. It’s great, it’s like having a valet take care of your car when you go to a restaurant. Dependencies, or additional requirements for a software package, are also managed seamlessly by a good package manager.
Management of installed packages is also greatly facilitated by a good package management system. It keeps a full list of software installed, which is useful to see if you have something installed. More importantly, it makes upgrading a breeze. Lastly, this makes verification of a software package quite easy to do. By knowing what packages are installed, and what the properties of the components are, you can quickly diagnose a problem and hopefully fix it quickly.
Nov
11
2008
pSupposing you were the sort of person who would consider shaking a stick at offerings of "educational" information on green IT, you might find, right now, that there is a bit more work than you can handle.
/pp
It seems like everybody's doing an informational webcast on green IT at the moment - and more often than not they're sponsored by one of the big technology companies with a vested interest in the decision-making of the people looking for information on "green IT," like HP, Sun or IBM.
/pp
The notice I got today from Internet.com was on an upcoming webcast called "Governing IT in a Green World." And it's sponsored by IBM. The upside of the sponsorship being the "FREE" price tag for attendance (to "qualified attendees.")
/pp
As far as I can tell, that "qualified attendees" bit refers to registered Internet.com users, a status that is not difficult to achieve. I signed up just a moment ago at the registration page that came up when I tried to follow the a href="http://solutions.internet.com/index.php/5341_default"link to the webinar signup page/a.
/pp
The session is scheduled for December 2, 2008 and will be presented by George Spafford, principal consultant at Pepperweed Consulting.
/pp
According to the registration page, the key points of focus for the webinar will include
/pp
I- Understanding the risks facing IT, such as skyrocketing energy costs, Global warming and the potential for new regulations
/pp
- Developing and implementing "green" strategies in IT, including how IT can help the organization and what approaches are relevant to IT/I
/pp
I get the feeling from the material I've seen that the presentation might include a rehashing of some of the more regularly-repeated "green IT" mantras. Particularly in the "understanding the risks facing IT, such as skyrocketing energy costs etc." portion of the show. But I doubt at this point that a webinar would be targeting the imaginary demographic of "IT people who have no understanding at all of the energy-related issues facing businesses today."
/pp
Besides, the presentation is "45-60 minutes" and it's very possible that there will be something worth seeing during the "developing and implementing 'green' strategies in IT" part./pdiv class="feedflare"
a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=iJntN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=iJntN" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=MTb5N"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=MTb5N" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=SfZXN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=SfZXN" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=ImXVn"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=ImXVn" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=OVDTN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=OVDTN" border="0"/img/a
/divimg src="http://feeds.feedburner.com/~r/thewhir_blogs/~4/450023365" height="1" width="1"/
Nov
11
2008
!--[if gte mso 9]xml w:WordDocument w:ViewNormal/w:View w:Zoom0/w:Zoom w:TrackMoves/ w:TrackFormatting/ w:PunctuationKerning/ w:ValidateAgainstSchemas/ w:SaveIfXMLInvalidfalse/w:SaveIfXMLInvalid w:IgnoreMixedContentfalse/w:IgnoreMixedContent w:AlwaysShowPlaceholderTextfalse/w:AlwaysShowPlaceholderText w:DoNotPromoteQF/ w:LidThemeOtherEN-US/w:LidThemeOther w:LidThemeAsianX-NONE/w:LidThemeAsian w:LidThemeComplexScriptX-NONE/w:LidThemeComplexScript w:Compatibility w:BreakWrappedTables/ w:SnapToGridInCell/ w:WrapTextWithPunct/ w:UseAsianBreakRules/ w:DontGrowAutofit/ w:SplitPgBreakAndParaMark/ w:DontVertAlignCellWithSp/ w:DontBreakConstrainedForcedTables/ w:DontVertAlignInTxbx/ w:Word11KerningPairs/ w:CachedColBalance/ /w:Compatibility w:BrowserLevelMicrosoftInternetExplorer4/w:BrowserLevel m:mathPr m:mathFont m:val="Cambria Math"/ m:brkBin m:val="before"/ m:brkBinSub m:val="#45;-"/ m:smallFrac m:val="off"/ m:dispDef/ m:lMargin m:val="0"/ m:rMargin m:val="0"/ m:defJc m:val="centerGroup"/ m:wrapIndent m:val="1440"/ m:intLim m:val="subSup"/ m:naryLim m:val="undOvr"/ /m:mathPr/w:WordDocument /xml![endif]--!--[if gte mso 9]xml w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="267" w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal"/ w:LsdException Locked="false" Priority="9" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/ w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/ w:LsdException Locked="false" Priority="39" Name="toc 1"/ w:LsdException Locked="false" Priority="39" Name="toc 2"/ w:LsdException Locked="false" Priority="39" Name="toc 3"/ w:LsdException Locked="false" Priority="39" Name="toc 4"/ w:LsdException Locked="false" Priority="39" Name="toc 5"/ w:LsdException Locked="false" Priority="39" Name="toc 6"/ w:LsdException Locked="false" Priority="39" Name="toc 7"/ w:LsdException Locked="false" Priority="39" Name="toc 8"/ w:LsdException Locked="false" Priority="39" Name="toc 9"/ w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/ w:LsdException Locked="false" Priority="10" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title"/ w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/ w:LsdException Locked="false" Priority="11" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/ w:LsdException Locked="false" Priority="22" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong"/ w:LsdException Locked="false" Priority="20" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/ w:LsdException Locked="false" Priority="59" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid"/ w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/ w:LsdException Locked="false" Priority="1" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/ w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/ w:LsdException Locked="false" Priority="34" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/ w:LsdException Locked="false" Priority="29" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Quote"/ w:LsdException Locked="false" Priority="30" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/ w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6"/ w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6"/ w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6"/ w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/ w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/ w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/ w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/ w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/ w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/ w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/ w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6"/ w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/ w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6"/ w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/ w:LsdException Locked="false" Priority="19" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/ w:LsdException Locked="false" Priority="21" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/ w:LsdException Locked="false" Priority="31" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/ w:LsdException Locked="false" Priority="32" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/ w:LsdException Locked="false" Priority="33" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Book Title"/ w:LsdException Locked="false" Priority="37" Name="Bibliography"/ w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/ /w:LatentStyles /xml![endif]-- !-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:1; mso-generic-font-family:roman; mso-font-format:other; mso-font-pitch:variable; mso-font-signature:0 0 0 0 0 0;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-1610611985 1073750139 0 0 159 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin-top:0in; margin-right:0in; margin-bottom:10.0pt; margin-left:0in; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:Calibri; mso-fareast-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; mso-themecolor:hyperlink; text-decoration:underline; text-underline:single;} a:visited, span.MsoHyperlinkFollowed {mso-style-noshow:yes; mso-style-priority:99; color:purple; mso-themecolor:followedhyperlink; text-decoration:underline; text-underline:single;} p.MsoNoSpacing, li.MsoNoSpacing, div.MsoNoSpacing {mso-style-priority:1; mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:Calibri; mso-fareast-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:Calibri; mso-fareast-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} .MsoPapDefault {mso-style-type:export-only; margin-bottom:10.0pt; line-height:115%;} @page Section1 {size:8.5in 11.0in; margin:1.0in 1.0in 1.0in 1.0in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} -- !--[if gte mso 10] style /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0in; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;} /style ![endif]-- p class="MsoNoSpacing"A couple of my clientrsquo;s customers have recently declared a href="http://www.uscourts.gov/bankruptcycourts/bankruptcybasics/chapter11.html"Chapter 11 bankruptcy/a.spannbsp; /spanThis unfortunate turn of events affects not only the party filing for bankruptcy, but also their suppliers.spannbsp; /spanWhile bankruptcy law is outside the scope of a blog entry, there are a couple of pointers and lessons for hosting companies whose clients may file for bankruptcy./p p class="MsoNoSpacing"nbsp;/p p class="MsoNoSpacing"The first major lesson is to understand the ldquo;a href="http://www.uscourts.gov/bankruptcycourts/bankruptcybasics/chapter11.html#stay"automatic stay/a.rdquo;spannbsp; /spanThe automatic stay essentially stops collection of debts that predate the filing of bankruptcy.spannbsp; /spanThis means is that if your customer files for bankruptcy and they have a past due debt that is prior to the date of the filing, you canrsquo;t try to collect that debt.spannbsp; /spanThe definition of ldquo;trying to collectrdquo; is generally quite broad.spannbsp; /spanSo, you cannot turn off their account based on the pre-bankruptcy debt.spannbsp; /spanThis often means that you are required to provide services without getting paid./p p class="MsoNoSpacing"nbsp;/p p class="MsoNoSpacing"This obligation continues as long as the contract is in force.spannbsp; /spanFor example, if you have a year contract and you are in month 6 of the contract when your customer files for bankruptcy, you must continue to provide services to the customer for the final 6 months.spannbsp; /spanEven if you donrsquo;t get paid.spannbsp; /spanYour obligation continues only as long as the contract is in force.spannbsp; /spanOnce the contract expires, you can generally terminate the contract./p p class="MsoNoSpacing"nbsp;/p p class="MsoNoSpacing"Hosts who feel that their customers are teetering on the edge of bankruptcy, might consider altering the terms of their contract.spannbsp; /spanFor example if a customer begins to fall past due, and you negotiate with the customer about their account, you may want to offer to shorten the term of the contract.spannbsp; /spanThat way, if the customer files Chapter 11 bankruptcy, and owes you money, you are not obligated to provide them with services for such a long period of time./p p class="MsoNoSpacing"nbsp;/p p class="MsoNoSpacing"It is important that you pay attention to notices of bankruptcy you receive.spannbsp; /spanWhile itrsquo;s unlikely that a bankruptcy court will actually fine you for violation of the automatic stay for a $9.95 hosting account, you will save your company some legal fees if you donrsquo;t try to collect a pre-bankruptcy debt from a bankrupt client.spannbsp; /spanTaking notice also includes ceasing all debt collection efforts, from having your accounts receivable department call the customer, to sending the debt out for collection./pdiv class="feedflare"
a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=U6IgN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=U6IgN" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=mzmUN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=mzmUN" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=tFOFN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=tFOFN" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=re8Dn"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=re8Dn" border="0"/img/a a href="http://feeds.feedburner.com/~f/thewhir_blogs?a=EvZNN"img src="http://feeds.feedburner.com/~f/thewhir_blogs?i=EvZNN" border="0"/img/a
/divimg src="http://feeds.feedburner.com/~r/thewhir_blogs/~4/449613135" height="1" width="1"/
Nov
10
2008
The Red Hat Package Manager (RPM) is a toolset used to build and manage software packages on UNIX systems. Distributed with the Red Hat Linux distribution and its derivatives (CentOS is 100% compatible rebuild of the Rehat Enterprise Linux), RPM also works on any UNIX as it is open source. However, finding RPM packages for other forms of UNIX, such as Solaris or IRIX, may prove difficult.
Package management is rather simple in its principles, though it can be tricky in its implementations. Briefly, it means the managed installation of software, managing installed software, and the removal of software packages from a system in a simplified manner. RPM arose out of the needs to do this effectively, and no other meaningful solution was available.
RPM uses a proprietary file format, unlike some other UNIX software package managers. This can be problematic if you find yourself needing to extract one component from the package and you don’t have the RPM utility handy. Luckily a tool like Alien exists to convert from RPM to other formats. It can be possible, through tools like Alien, to get to a file format you can manage using, say, tar or ar.
The naming scheme of RPM files is itself a standardized convention.
RPMs have the format (name)-(version)-(build).(platform).rpm. For example, the name cat-2.4-7.i386.rpm would mean an RPM for the utility “cat” version 2.4, build 7 for the x86. When the platform name is replaced by “src”, it’s a source RPM.
Nov
07
2008
If you have Excel files that need to be imported into MySQL, you can import them easily with PHP. First, you will need to download some prerequisites:
PHPExcelReader - http://sourceforge.net/projects/phpexcelreader/
Spreadsheet_Excel_Writer - http://pear.php.net/package/Spreadsheet_Excel_Writer
Once you’ve downloaded both items, upload them to your server. Your directory listing on your server should have two directories: Excel (from PHPExcelReader) and Spreadsheet_Excel_Writer-x.x.x (from Spreadsheet_Excel_Writer). To work around a bug in PHPExcelReader, copy oleread.inc from the Excel directory into a new path:
Spreadsheet/Excel/Reader/OLERead.php
The PHPExcelReader code will expect OLERead.php to be in that specific location. Once that is complete, you’re ready to use the PHPExcelReader class. I made an example Excel spreadsheet like this:
Name Extension Email
----------------------------------------------------
Jon Smith 2001 jsmith@domain.com
Clint Jones 2002 cjones@domain.com
Frank Peterson 2003 fpeterson@domain.com
After that, I created a PHP script to pick up the data and insert it into the database, row by row:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read('exceltestsheet.xls');
$conn = mysql_connect("hostname","username","password");
mysql_select_db("database",$conn);
for ($x = 2; $x < = count($data->sheets[0]["cells"]); $x++) {
$name = $data->sheets[0]["cells"][$x][1];
$extension = $data->sheets[0]["cells"][$x][2];
$email = $data->sheets[0]["cells"][$x][3];
$sql = "INSERT INTO mytable (name,extension,email)
VALUES ('$name',$extension,'$email')";
echo $sql."\n";
mysql_query($sql);
} |
After the script ran, each row had been added to the database table successfully. If you have additional columns to insert, just repeat these lines, using an appropriate variable for each column:
$variable = $data->sheets[0]["cells"][$row_number][$column_number];
For more details, you can refer to a post in Zend’s Developer Zone.