Trending December 2023 # Techtarget Reports Second Quarter 2008 Financial Results # Suggested January 2024 # Top 16 Popular

You are reading the article Techtarget Reports Second Quarter 2008 Financial Results updated in December 2023 on the website Cancandonuts.com. We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested January 2024 Techtarget Reports Second Quarter 2008 Financial Results

TechTarget, Inc. (NASDAQ: TTGT) today announced financial results for the second quarter ended June 30, 2008. Total revenues for the second quarter increased by 19% to $29.4 million compared to $24.6 million for the comparable prior year quarter. Online revenue increased by 28% to $20.8 million compared to $16.3 million for the second quarter of 2007 and represented 71% of total revenues. Adjusted EBITDA (earnings before interest, taxes, depreciation, and amortization, as further adjusted for stock-based compensation) for the second quarter decreased by 1% to $7.5 million compared to $7.6 million for the comparable prior year quarter.

Total gross profit margin for the quarter was 69% compared to 70% for the comparable prior year quarter. Online gross profit margin for the quarter was 74% compared to 76% for the comparable prior year quarter.

Net income for the quarter was $1.7 million compared to $3.2 million for the comparable prior year quarter. Adjusted net income (net income adjusted for amortization and stock-based compensation, as further adjusted for the related income tax impact) was $4.3 million compared to $4.9 million for the comparable prior year quarter. Net income per diluted share for the quarter was $0.04 compared to net income per diluted share of $0.08 on a pro forma basis for the comparable prior year quarter. Adjusted net income per share (adjusted net income divided by adjusted weighted average diluted shares outstanding) for the quarter was $0.10 compared to $0.13 on a pro forma basis for the comparable prior year quarter. As of June 30, 2008, TechTarget had $67.7 million of cash, cash equivalents and short term investments, and bank debt of $4.5 million.

Recent Company Highlights

Won 12 Awards for editorial excellence from independent organizations, including eight Awards of Excellence from the American Society of Business Publication Editors (ASBPE) and four awards from Trade Association and Business Publications International (TABPI).

Financial guidance

In the third quarter of 2008, the Company expects total revenues to be within the range of $25.0 million to $26.0 million and adjusted EBITDA to be within the range of $4.3 million to $5.1 million.

As previously announced on July 24, 2008, the Company expects 2008 total annual revenues to be within the range of $108 and $112 million and adjusted EBITDA to be within the range of $25 and $27 million. Additionally, the Company expects its online revenue for 2008 to grow between 24% – 30%.

Conference Call and Webcast

(Due to the length of the above URL, it may be necessary to copy and paste it into your Internet browser’s URL address field. You may also need to remove an extra space in the URL if one exists.)

Non-GAAP Financial Measures

This press release and the accompanying tables include a discussion of adjusted EBITDA, adjusted EBITDA Margin, adjusted net income and adjusted net income per share, all of which are non-GAAP financial measures which are provided as a complement to results provided in accordance with accounting principles generally accepted in the United States of America (“GAAP”). The term “adjusted EBITDA” refers to a financial measure that we define as earnings before net interest, income taxes, depreciation, and amortization, as further adjusted for stock-based compensation. The term “adjusted EBITDA Margin” refers to a financial measure which we define as adjusted EBITDA as a percentage of total revenues. The term “adjusted net income” refers to a financial measure which we define as net income adjusted for amortization and stock-based compensation, as further adjusted for the related income tax impact for the specific adjustments. The term “adjusted net income per share” refers to a financial measure which we define as a djusted net income divided by adjusted weighted average diluted shares outstanding. These Non-GAAP measures should be considered in addition to results prepared in accordance with GAAP, but should not be considered a substitute for, or superior to, GAAP results. In addition, our definition of adjusted EBITDA, adjusted EBITDA Margin, adjusted net income and adjusted net income per share may not be comparable to the definitions as reported by other companies. We believe adjusted EBITDA, adjusted EBITDA Margin, adjusted net income and adjusted net income per share are relevant and useful information because it provides us and investors with additional measurements to compare the Company’s operating performance. These measures are part of our internal management reporting and planning process and are primary measures used by our management to evaluate the operating performance of our business, as well as potential acquisitions. The components of adjusted EBITDA include the key revenue and expense items for which our operating managers are responsible and upon which we evaluate their performance. In the case of senior management, adjusted EBITDA is used as the principal financial metric in their annual incentive compensation program. Adjusted EBITDA is also used for planning purposes and in presentations to our board of directors. Adjusted net income is useful to us and investors because it presents an additional measurement of our financial performance, taking into account depreciation, which we believe is an ongoing cost of doing business, but excluding the impact of certain non-cash expenses and items not directly tied to the core operations of our business. Furthermore, we intend to provide these non-GAAP financial measures as part of our future earnings discussions and, therefore, the inclusion of these non-GAAP financial measures will provide consistency in our financial reporting. A reconciliation of these non-GAAP measures to GAAP is provided in the accompanying tables.

Forward Looking Statements

Share This Press Release

You're reading Techtarget Reports Second Quarter 2008 Financial Results

Excel Shortcuts To Audit Financial Models

Introduction to Excel Shortcuts to Audit Financial Models

In a research company, Ms. Annie, a trainee with a basic knowledge of Excel, has built a financial model, but unfortunately, the financials of the model did not tally. Ms. Annie went to every cell to find out where the model went wrong but got confused going cell-wise and failed to determine the error.

Start Your Free Investment Banking Course

Download Corporate Valuation, Investment Banking, Accounting, CFA Calculator & others

In this thought, Annie went to her friend, Ms. Annika, who was a senior research analyst in the same company. Annie told her the problem, and Ms. Annika helped her to explore some awesome Excel shortcuts to audit financial models. Let’s see what she taught Annie.

Financial Model and Excel Shortcuts 1. Ctrl page down / Ctrl page up

A financial model has different sheets to navigate. Using a mouse to navigate through these sheets every now and then can be a bit tough. So avoid using the mouse and use the keyboard shortcut CTRL+Page up OR Ctrl + Page Down to navigate different worksheets.

2. F2 Key

The F2 key of the keyboard is used if you want to know the following:

The formula used to calculate a certain item

The cells used to calculate the formula

Edit the formula

3. Ctrl {

To ensure an effective financial model, link cells from different worksheets within the same workbook, not just linking sheets from one worksheet. If your balance sheet is not tallying due to incorrect linkages of interest expense, check which cell it is linked to. The interest expense of the income statement must be linked to the interest expense schedule, which is available in different worksheets.

To overcome this, Use the shortcut CTRL + {.This shortcut will bring you to the cell it got linked from.

Now you need to check from where interest expense got linked, so go to the cell you want to check, then use the shortcut key Ctrl + {. This shortcut will bring you to the cell it got linked to from any worksheet available in the same workbook.

So in this example, the interest expense it will bring to the interest expense schedule, and the cell which got linked will be highlighted.

4. F5

Using the above shortcut key, you have reached the cell which got linked. But you have not completed the audit of the income statement completely, so you want to go back to the income statement and start from the same cell you were checking the linkage and completing the audit.

Again now what will you do? Getting the thought of doing it manually is a bad idea. To overcome this situation, use the F5 shortcut key.

This will bring you to the cell it was referring to. Reference will generally refer to the previous cell you were at.

5. Ctrl ~

You can use this shortcut to see the formulas used together for the entire worksheet. So go to any worksheet cell where you want to see only the formulas and press Ctrl +~.  This is how it would appear. 

Ms. Annie was delighted as she could explore some awesome Excel shortcuts to audit financial models. She thanked Ms. Annika for helping her. Ms. Annie returned to her financial model and easily went through the entire model using these shortcuts. She found her mistake, rectified it, and was very happy as her financial model got tallied.

Ms. Annie, with a sigh of relief, wondered, “Auditing a financial model was definitely a tedious job, but this awesome Excel shortcut has made it so easy.”

Recommended Articles

Here are some articles that will help you get more details about the Audit financial models, so just go through the link.

Tech Wrap: Goodbye 2008…Hello 2009!

(Make your prediction for 2009 at the bottom of this page.)

Any day now I expect to slip into that alternative reality consisting of Christmas trees, holiday lights, gift giving, turkey and large splashes of sherry while sitting in front of an open fire. However, this state cannot persist forever and come early January (how early depends on how much sherry has been involved) I’ll be dumped, cold and dazed, into 2009. Before that happens it’s time to take a look at some of the events that have helped shape 2008, and peer into the crystal ball to find out what will be making the headlines in 2009.

One event more than any that has shaped 2008 is the economy’s nose-dive over the past few months. Tech has taken a particularly hard hit as consumers and companies decide either to put off purchases, or make last year’s technology last longer. I predict that this trend will continue into 2009, and that it could get worse, as price-sensitivity turns into a generalized allergy to spending altogether.

I see the whole consumer electronics market seeing a continued slowdown over the next twelve months as people wise up to replacing a fully-functional TV or iPod with one that’s an inch bigger of has a few gigabytes of extra storage. January’s CES 2009 (Consumer Electronics Show) is mostly going to be a showcase of stuff people aren’t going to be spending their money on.

Those with money to spend will find be demanding more technology for their dollars (and they’re getting it – have you seen some of the prices out there?!!), putting additional pressure of consumer electronics companies. After all, people are far more careful when it comes to spending their money than they are about spending credit.

Not all the casualties of 2008 were because of the credit crisis. While it was inevitable that golden goose stock such as APPL and GOOG would suffer a readjustment, some companies just tripped over the shoelaces. One such company was the graphics giant NVIDIA. Here we have a company whose stock a year ago was trading at around $30 a share, but following a disclosure in July that thermal issues plagued some mobile GPUs (and we’re still not clear whether all the affected GPUs have been identified) is now trading at around $8 a share.

Also in the “something interesting” category for 2008 is the Florida-based Mac cone company Psystar. Here’s a company that hit the headlines in April when it launched a range of Mac clone systems that seemed to violate Apple’s EULA. Apple filed suit against Psystar in July and everyone expected the company to become yet another bug on the windshield of Apple’s legal machine, but here we are at the end of 2008 and the Floridian upstart continues to sell cut-priced Mac clone.

So, going forward to 2009, what should we be focusing on over the next twelve months? Well, tech news in 2009 will be dominated by the economy. Unless things dramatically change over the next few months (and if you see any signs of things getting better soon, do let me know), even in my more optimistic moments I see 2009 being just as bad as 2008. Even if we see a dramatic improvement during Q3 or Q4 I still see both consumers and businesses being cautious and conservative, choosing to reduce debt load and replenish depleted savings.

Economy aside, operating systems are going to be a big talking point. Apple’s Mac OS X 10.6 “Snow Leopard” should be hitting Macs sometime around April. And while Microsoft’s Windows 7 might not make an appearance during 2009 (while I firmly believe that it’ll be released sooner rather than later, some tech pundits think it won’t be released until 2010), I expect Microsoft to be enthusiastically waving its hypnodisk around in an attempt to get us to forget about Vista.

To be honest, it’s already working on me. The more I use Windows 7 the more I want to switch to it and leave Vista behind.

But it’s not just Mac OS and Windows that is going to be talked about during 2009. A soggy economy is also going to be good for open source, especially operating systems. While I don’t believe the hype coming out of the mouths and from the keyboards of Linux zealots that 2009 will be the year of Linux (after all, it’s easier to save money by sticking with old technology rather than replacing it, even if you are replacing it with free software), I do think that ‘09 will offer increasing exposure to open source projects. I think we can safely assume that Linux will grab a 1 per cent market share by this time next year. However, it won’t be desktop and notebook systems driving this increase (sales of these are pretty flat), but instead low-cost netbook systems.

Despite the mushy economy I still see 2009 being a very interesting one from a tech POV, whether you’ll have money to spend or you’re just window shopping.

Well, all that’s now left for me to do is wish you all Happy Holidays and all the best for 2009! See you next year!

What Is Reports And Printing In Tdl?

 PDF

Watch this video to know about designing reports and customising invoice

Watch the below video for designing different types of reports such as tabular report, hierarchical reports and column based reports

Watch the below video for printing reports and invoices in different formats

In TallyPrime, financial statements are generated as Reports, based on the vouchers entered till date. Balance Sheet, Profit & Loss A/c, Trial Balance, etc., are some default reports in Tally.

Normally, a business requires reports in any of the following formats:

Tabular Report: A report with fixed number of columns, which can be configured.

Hierarchical Report: A report designed in successive levels or layers.

Columnar Reports: A report with multiple columns or dynamically varying number of columns. TallyPrime caters to generating all these types of Reports.

A tabular report is the simplest format of all the Report formats. A typical tabular report has the following components:

Report Title: It contains the name of the report, the title for each column, the day/period for which a report is generated, etc.

Report Details: It contains the actual information.

Report Total: It contains the total of the respective columns.

In a tabular report, the columns are fixed and interactive; an end user can change its appearance. The reports like Day Book, Stock Summary, Trial Balance, Group Summary, and so on are some default tabular reports in Tally. 

A typical tabular report will have the following sections:

a Title Line

a Details Line and

an optional Total Line

The details line will be repeated over the objects of a collection. A tabular report can be made interactive by adding the following features:

Adding buttons to change the period, to change the contents of the Report, etc. 

Adding explosions to the lines.

TallyPrime allows the user to display additional information about the current line object, when the key combination SHIFT + Enter is pressed. This functionality is called as explosion in Tally. Line attributes Explode and Indent, and the function $$KeyExplode, are used for the same.

Attribute – Explode

The attribute Explode refers to an attribute of the line, which is used to take the current data from the Line Object. A Part is displayed after the process of explosion is complete.

Syntax

Where,

Example 1: Simple Tabular Report

Let us consider writing a simple Trial Balance.

[Part : My TB Part]

Lines   : My TB Title, My TB Details

Repeat  : My TB Details : My TB Groups

Scroll  : Vertical

Example 2: A Simple Interactive Tabular Report

A report showing all the Primary groups can be created and exploded by pressing Shift + Enter to view the sub groups. The ledgers can subsequently be viewed on the same screen with an indent for each level. The report is as shown in Figure 9.3

The following code snippet displays the exploded part:

[Line : My TB Details]

Fields       : My TB Name Field, My TB ParName Field

Right Fields : My TB Dr Amt Field, My TB Cr Amt Field

Explode       : My TB Group Explosion : $$IsGroup and $$KeyExplode

[Field : My TB Name Field]

Use          : Name Field

Set as       : $Name

Variable     : MyGroupName1

Simple Interactive Tabular Report. The code for the exploded part is as follows:

[Part : My TB Group Explosion]

Lines         : My TB Details Explosion

Repeat        : My TB Details Explosion : My TB GroupsLedgers

Scroll        : Vertical

[Line : My TB Details Explosion]

Fields        : My TB Name Field, My TB ParName Field

Right Fields  : My TB Dr Amt Field, My TB Cr Amt Field

Explode       : My TB Group Explosion : $$IsGroup and $$KeyExplode

Indent       : 2 * $$ExplodeLevel

Local : Field : Default : Delete : Border

The Collection My TB GroupLedgers is a union of collections of Type Group and Ledger, respectively.

[Collection : My TB GroupsLedgers]

Collection : My TB Groups, My TB Ledgers

The Variable MygroupName1 is used in Child Of attribute, under the collections My TB Groups and My TB Ledgers

[Collection : My TB Groups]

Type : Group

Child Of : #MyGroupName1

[Collection : My TB Ledgers]

Type : Ledger

Child Of : #MyGroupName1

When the user presses the Shift + Enter keys, then the exploded part shows the Sub-groups under the group in the current line.

When the keys Shift + Enter are pressed by the user, one more exploded part shows the Ledgers under the current Sub-group, as shown in Figure 9.5.

A Tally application provides a simple way of navigating from one report to another, which is commonly referred to as a drill down. A Drill Down facility moves from one report to the other to give a detailed view based on the selection in the current report. A user can return to the first Report from the detailed view. A typical drill down in TallyPrime starts from the Report and reaches the Voucher Alteration screen.

Hierarchical Reports can be designed by incorporating the following changes to a Tabular Report:

Variable attribute of Report definition

Child Of attribute of Collection definition

Display and Variable attributes of Field definitions

Variable Definition

Example

The following code snippet demonstrates the Drill down action, which is based on the Group Name displayed in the field. The Drill down action is achieved by specifying the two attributes ‘Variable’ and ‘Display’ at the field level.

[Field : My TB Name]

Width    : 120 mms

Set as   : $Name

Variable : GroupVar

Display  : My Trial Balance : $$IsGroup

A Variable is defined as Volatile and is associated at Report. The attribute Variable of Report definition is used to associate the Variable with the report.

[Variable : Group Var]

Type     : String

Default  : “”

Volatile : Yes

[Report : My Trial Balance]

Form     : My Trial Balance

Variable : GroupVar

The same Variable is used in the Childof attribute of the Collection definition. When a line is repeated over this collection in the report; when the user presses the Enter key, the Report being displayed will have the objects whose Parent Name is stored in the variable.

[Collection : My Collection]

Type     : Group

Child of : ##GroupVar

The following screen is displayed when the user selects the option from the Menu:

When the key Enter is pressed by the user, the next screen displays the Sub Groups of the current Group.

The reports in which the number of columns added or deleted as per the user inputs are referred to as column-based reports. There are four types of column-based reports in Tally, namely Multi-Column Reports, Auto-Column Reports, Automatic Auto-Column Reports and Columnar Reports. All these types are explained with examples in this section.

In Multi-Column reports, a column is repeated based on the criteria specified by user. Trial Balance, Balance Sheet, Stock Summary, etc., are some default Reports in TallyPrime having Multi column feature. Normally, this feature is used to compare values across different periods.

Designing a Multi Column Report

In a Tabular Report, Lines are repeated over a collection. But in a multi-column Report, columns are repeated in addition to the repetition of the Lines over a Collection. Based on the user input, columns are repeated. The column Report is used to capture user inputs like Period, Company Name, Stock Valuation, etc., based on which columns are generated.

Following attributes are used at various components of a Report to incorporate the multi-column feature:

Attribute – Column Report

Attribute Column Report of the Report definition, facilitates the creation of multi-column reports.

Syntax

Where,

Attribute – Repeat

Attribute Column Report is associated with a variable, which in turn is specified in ‘Repeat’ attribute of Report definition. Both attributes are specified in ‘Report’ definition to create a multi-column report.

Syntax

Repeat : Variable

Example: Incorporating Multi Column Feature to Trial Balance report

Step 1 : Using Column Report & Repeat attribute at the Report

[Report: MulCol Trial Balance]

ColumnReport : MyMultiColumns

Repeat : SVCurrentCompany, SVFromDate, SVToDate

Step 2 : Modifying the System Variables in a multi-column Report

[Field : My MultiFromDate]

Use      : Uni Date Field

Modifies : SVFromDate

[Field : My MultiToDate]

Use      : Uni Date Field

Modifies : SVToDate

[Field : My MultiCompany]

Use      : Name Field

Modifies : SVCurrentCompany

Table    : Company

Step 3: Repeating Columns over a Variable and Lines over Objects of a Collection

To repeat columns over a Variable, which is captured in MyMultiColumns Report, following needs to be done at various components of the MulCol Trial Balance Report.

1. Report Definition: Repeating over the values of system variable which is captured in MyMultiColumns Report

[Report : MulCol Trial Balance]

Repeat : SVCurrentCompany, SVFromDate, SVToDate

2 . Part Definition: Repeating Lines over objects of a Collection.

[Part : MulCol TB Details]

Lines       : MulCol TB Details

BottomLines : MulCol TB Total

Repeat      : MulCol TB Details : MulCol TB GroupLed

3. Line Definition:- Repeating Field

[Line : MulCol TB Details]

Fields : MulCol TB Name Field, MulCol TB Amount Field

Repeat : MulCol TB Amount Field

Designing an Auto-Column Report

Auto column Report is similar to a Multi column Report, except that here, a set of columns are repeated, instead of one. User input will decide the criteria on which the columns are repeated.

Example: Incorporating Auto Column Feature to Trial Balance report

Step 1 : Adding the Configuration Screen to the Form

The Button MyAutoButton is added to Form. Through this Button, the configuration Report MyAutoColumns is arrived at through the Auto columns mode.

[Form : MulCol Trial Balance]

Bottom Button : MyAutoButton,

[Button : MyAutoButton]

Key    : Alt+N

Action : Auto Columns : MyAutoColumns

Title  : $$LocaleString:”Auto Column”

Step 2 : The Configuration Report MultiAutoColumns

In configuration Report, the user will be given options like ‘Days’,’ Monthly’, Yearly’, ‘Company’, etc., based on which the columns are repeated. In TDL, these options are external objects.

[Collection : MyAuto Columns]

Title       : $$LocaleString : “Column Details”

Object      : MyCurrentCompany, MyQuarterly, MyMonthly, MyYearly, MyHalfYearly

Filter      : Belongs

Format      : $$Name, 15

[Object : MyCurrentCompany]

Name        : $$LocaleString : “Company”

VarName     : “SVCurrentCompany”

CollName    : “List of Primary Companies”

IsAgeWise   : No

Periodicity : “”

[Object : MyQuarterly]

Name        : $$LocaleString : “Quarterly” 

VarName     : “SVFromDate, SVToDate”

CollName    : “Period Collection”

BelongsIf   : “Yes”

IsAgeWise   : No

Periodicity : “3 Month”

[Object : MyHalfYearly]

Name        : $$LocaleString:”Half-Yearly”

VarName     : “SVFromDate, SVToDate”

CollName    : “Period Collection”

BelongsIf   : “Yes”

IsAgeWise   : No

Periodicity : “6 Month”

[Object : MyMonthly]

Name        : $$LocaleString:”Monthly”

VarName     : “SVFromDate, SVToDate”

CollName    : “Period Collection”

BelongsIf   : “Yes”

IsAgeWise   : No

Periodicity : “Month”

[Object : MyYearly]

Name        : $$LocaleString:”Yearly”

VarName     : “SVFromDate, SVToDate”

CollName    : “Period Collection”

BelongsIf   : “Yes”

IsAgeWise   : No

Periodicity : “Year”

 Columns can be repeated over any collection. They are not restricted only to a Period.

[Field : My SelectAuto]

Use           : Short Name Field

Table         : MyAutoColumns

Show Table    : Always

[Field : My AutoColumns]

Use        : Short Name Field Invisible : Yes

Set as     : $$Table:MySelectAuto:$VarName

Set always : Yes

Skip       : Yes

[Field : My CollName]

Use        : Short Name Field

Invisible  : Yes

Set as     : $$Table:MySelectAuto:$CollName

Modifies   : DSPRepeatCollection

Set always : Yes

Skip       : Yes

[Field : My StartPeriod]

Use        : Short Date Field

Invisible  : Yes

Set as     : if $$IsEmpty:$$Table:MySelectAuto:$Periodicity then+

##SVFromDate else if $$Table:MySelectAuto:$Periodicity = “Day” then ##SVFromDate else +

$$LowValue:SVFromDate

Set always : Yes

Modifies   : SVFromDate Skip : Yes

[Field : My EndPeriod]

Use        : Short Date Field

Invisible  : Yes

Set as     : if $$IsEmpty : $$Table:MySelectAuto:$Periodicity then ##SVToDate else if $$Table:MySelectAuto: +

$Periodicity = “Day” then $$MonthEnd:#DSPStartPeriod else $$HighValue:SVToDate

Set always : Yes

Modifies   : SVToDate

Skip       : Yes

[Field : My SetPeriodicity]

Use        : Short Name Field

Invisible  : Yes

Set as     : if NOT $$IsEmpty:$$Table:MySelectAuto:$Periodicity then $$Table:MySelectAuto:$Periodicity else “Month”

Set always : Yes

Modifies   : SVPeriodicity

The generated values are sent to the Parent Report by using the Form attribute Output.

[Form : MyAutoColumns]

No Confirm : Yes

Parts : My AutoColumns

Output : My AutoColumns

Step 3 : Repeating Columns over a Variable and Lines over Objects of a Collection

To repeat columns over a Variable which are captured in an Auto Columns Report, the following needs to be done at various components of the ‘MulCol Trial Balance’ Report.

1. Report Definition: This involves repeating the Values of a System Variable which is captured in MyMultiColumns Report.

[Report : MulCol Trial Balance]

Repeat : SVCurrentCompany, SVFromDate, SVToDate

2. Part Definition: This involves repeating Lines over the Objects of a Collection.

[Part: MulCol TB Details]

Lines : MulCol TB Details

BottomLines : MulCol TB Total

Repeat : MulCol TB Details : MulCol TB GroupLed

3.Line Definition: This involves repeating a Field.

[Line : MulCol TB Details]

Fields : MulCol TB Name Field, MulCol TB Amount Field

Repeat : MulCol TB Amount Field

There may be situations when the columns are required; automatically without the intervention of the user when the report is opened. The Attendance Sheet is an example of the Automatic autocolumn Report in Tally.ERP9.

Designing an Automatic Auto Column Report

In order to design an Automatic Auto Column Report, the function $$SetAutoColumns, and the pre-defined variables DoSetAutocolumn and the DSPRepeatCollection are used.

The following points must be considered while creating the automatic auto-column reports:

The value of the variable DoSetAutoColumn must be set to YES.

The variable DSPRepeatCollection stores the Collection Name to be repeated.

The function $$SetAutoColumns accepts the name of a variable which is repeated over the value of variable DSPRepeatCollection.

The columns are displayed based on the values in the collection provided by variable DSPRepeatCollection.

Example

Consider the example of creating an auto-column for a Trial Balance. The same report can be modified to have automatic Columns for Multiple selected companies. As mentioned earlier, the following should be resorted to:

The variable DoSetAutoColumn must be set to Yes .

[Report : MulCol Trial Balance]

Set : DSPRepeatCollection : “List of Primary Companies”

The variable DSPRepeatCollection has to be set to List of Primary Companies

[Form : MulCol Trial Balance]

Option : Set Auto Option : $$SetAutoColumns:SVCurrentCompany

Add a dummy option in the ‘Form’ Definition such that the condition of the same is $$SetAutoColumns:SVCurrentCompany . The variable SVCurrentCompany will be repeated automatically as soon as you enter the report, provided multiple companies are loaded.

Also add the following lines to the Form Definition MultiCol Trial Balance

Option : Set Auto Option : $$SetAutoColumns : SVCurrentCompany

[!Form : Set Auto Option]

Multiple companies should be loaded for this program. Now, when the user selects the Menu Item, the following screen is displayed:

All the Voucher Reports which contain Accounting Information (Ledger and/or Group Info) available in Vouchers, and can be displayed as Columns, are categorized as Columnar Reports. For example, Sales Register, Purchase Register, Journal Register, Ledger, etc., where the Voucher Registers can display multiple columns and respective values for each column, viz. the ledger, the parent of the ledger, etc., entered in the voucher, as opted by the user.

Note: These types of Reports also use the Auto Column concept for achieving disparate columns.

Stock Registers and Sales Registers are a classic example of Columnar Reports.

We have already understood the various types of reports and the techniques to generate them. An essential element of Reporting is printing. All the reports must be printable in one form or the other.

Printing Techniques : The techniques used for Printing are as follows:

Menu Action Print or Print Collection enters the final Report in Print mode.

Syntax

Example

[#Menu : Printing Menu]

Add : Key Item : My Ledgers : L : Print Collection : Ledger Vouchers

Add : Key Item : My Day Book : D : Print : Day Book

Here, we are adding the Item My Ledgers, which has an action Print Collection associated to it.

It displays a collection bearing the List of ledgers, which on user selection, enters the final report in ‘Print’ Mode. On accepting, it directly goes to the printer.

Another method of printing reports is by way of associating a Button with an action Print Report at the ‘Form’ definition. Action ‘Print Report’ prints the current report by default. This action accepts Report Name as its parameter. If any report other than current needs to be printed, an additional parameter containing Report Name needs to be specified. The current report can pass the user selection to the printing report through a default collection called Parameter Collection.

Syntax

Example

[Button : Print Selected Pay slips]

Key        : Alt + F11

Title      : “Print Selected Pay slips”

Action     : Print Report : Multi Pay Slip Print

Scope      : Selected Lines

[#Report : Multi Pay Slip Print]

Collection : Parameter Collection

Here, the Button Print Selected Pay slips is defined with the Action ‘Print Report’, which also has an action parameter, i.e., the Report Name to be printed. The scope of the Button is Selected Lines, which means that the final Report Multi Pay Slip Print must contain only the selected Objects from the current Report. The user selection is passed to the new Report through a Collection ‘Parameter Collection’, which must be used in the destination Report ‘Multi Pay Slip Print’. So, the Report ‘Multi Pay Slip Print’ can be modified and added to the collection ‘Parameter Collection’.

A Page Break is the point at which one page ends and another begins. Handling Page Breaks is important, as the current page should indicate continuation to the next page, while the next page must indicate that the current page is continued from the previous page. So, there must be a closing identifier, i.e., closing page break information and an opening identifier, i.e., opening page break information.

In other words, Page Breaks specify the headers and footers for every page, and are printed across multiple pages. Closing Page Break starts printing from the first page and prints on every page except the last page, e.g., Continued… to be printed at the bottom of each page. Opening Page Break starts printing from the second page till the last page. Closing Page Break is specified before Opening Page Break, since in any circumstance, closing page break is encountered first.

In TDL, Page Breaks can be handled vertically as well as horizontally .

Vertical Page Breaks

In cases where a report containing data cannot be printed in a single page, one needs to use vertical page breaks. Vertical Page Breaks can be specified at 2 levels, viz. Form and Part .

Form Level Page Break

Vertical Page Breaks can be specified at Form through the Form Attribute Page Break. It takes 2 parameters, viz. First Part for Closing Page Break and Second Part for Opening Page Break.

Syntax

Example

Consider a Trial Balance report of a company, which requires the title and address of the Company in the first page and the grand total in the last page. In the pages between the first and the last page, the text Continued…. may be required at the end of each page, and the Company Name and Address at the beginning of each page.

[Form : My Trial Balance]

Page Break : Cl Page Break, Op Page Break

[Part : Cl Page Break]

Lines      : Cont Line

[Line : Cont Line]

Fields     : Cont Field

Border     : Full Thin Top

[Field : Cont Field]

Set As     : “Continued…”

Full width : Yes

Align      : Right

[Part : Op Page Break]

Parts      : DSP OpCompanyName, DSP OpReportTitle

Vertical   : Yes

In this example, Closing Page Break is defined to print Continued… at the end of every continued page. Opening Page Break is defined to print the Company Name and Report Title at the beginning of all the continuing pages. Since more than one part is used within Part definition, specify the alignment as ‘Vertical’, if required.

Part Level Page Breaks

Vertical Page Breaks can be specified at Part through the Part Attribute Page Break. This is generally used when the Page Totals are to be printed for each closing and opening pages.

It takes 2 parameters, viz.1st Line for Closing Page Break and 2nd Line for Opening Page Break.

Syntax

Example

Consider a Trial Balance Report of a company, where we may require the running page totals to be printed at the end and beginning of each page.

[Part : My Trial Balance]

Page Break : Cl Page Break, Op Page Break

[Line : Cl Page Break]

Use    : Detail Line

Local  : Field : Particulars Fld : Set As: “Carried Forward”

Local  : Field : DrAmt Fld: Set As : $$Total:DrAmtFld

Local  : Field : CrAmt Fld: Set As : $$Total:CrAmtFld

Local  : Field : NetAmt Fld: Set As : $$Total:NetAmtFld

Border : Full Thin Top

[Line : Op Page Break]

Use    : Cl Page Break

Local  : Field : Particulars Fld : Set As : “Brought Forward”

Here, Line Cl Page Break is defined to use the pre-defined Detail Line and the relevant fields are modified locally to set the respective values. Similarly, the Line Op Page Break is defined to use the above defined line Cl Page Break, which locally modifies only the field Particulars Fld.

Horizontal Page Breaks

Horizontal Page Breaks are used if the number of columns run into multiple pages.

Line Level Page Breaks

Horizontal page breaks can be specified at Line through Line Attribute Page Break. It is generally used to repeat a closing column at every closing page and opening column at every opening page. It takes 2 parameters, viz. 1st Field for Closing Page Break & 2nd for Opening Page Break.

Syntax

Example

Consider a Columnar Sales Register Report of a company, where multiple columns are printed across pages. Some fixed columns are required in subsequent pages which makes it easy to map the columns in subsequent pages.

[#Line : DSP ColVchDetail]

Page Break : Cl Page Break, Op Page Break

[Field : Cl Page Break]

[Field : Op Page Break]

Fields : DBC Fixed, VCH No

In this example, the Field Cl Page Break is defined as Empty, since no Closing Column or Field is required and .Field Op Page Break is defined with further fields DBC Fixed and VCH No, which are available in default TDL

Form Level Page Break

Part Level Page Break Line Level Page Break

It is a Vertical Page Break

It is a Vertical Page Break

It is a Horizontal Page Break

Page Break attribute accepts Part Names as its value

Page Break attribute accepts Line Names as its value

Page Break attribute accepts Field Names as its value

Multiple Parts (parts within parts) can be printed both at closing and opening page breaks

Multiple lines (lines within lines) can be printed at both closing and opening page breaks

Multiple Fields (Fields within Fields) can be printed at both closing and opening page breaks

Form Level Page Breaks cannot handle running Page Totals

Running Page Totals can be handled with Part Level Page Break

Column Page Totals can be handled with Line Level Page Break

Data validation and controls in Tally can be done at two levels, either at the Platform level or at the TDL level. TDL Programmers do not have control over any of the Platform level validations. TDL Programmers can only add validation and controls at the TDL Level. Majorly there are a few Field level attributes and Form level attributes are used at the TDL Level for validation and control mechanisms. The field level attributes are: Notify, control, Validate and Unique. Similarly the Control attribute at Form level  and Menu level. Family attribute at Report level.

The differences between the field attributes Validate, Notify and Control are:

Field Attributes

Displays Message

Cursor Movement

Validate

No

Restricted

Notify

Yes

Not Restricted

Control

Yes

Restricted

The attribute Control restricts the display of Menu Items, based on the given condition.

Syntax

Example

[!Menu: Gateway of Tally]

Key Item : @@locAccountsInfo : A : Menu : Accounts Info. : NOT $$IsEmpty:$$SelectedCmps

Control : @@locAccountsInfo : $$Allow:Create:AccountsMasters OR $$Allow:Alter:AccountsMasters

Here, the menu item Accounts Info will be displayed only if the condition is satisfied. $$Allow checks if the current user has the rights to access the report displayed under the current Menu item. The value AccountsMasters has been derived from attribute Family at ‘Report’ definition.

A matrix report looks like a grid. It contains a row of labels, a column of labels, and information in grid format that is related to both the row and column labels. In Tally, two dimensional matrix reports can be designed using the Auto column report approach (using Repeat Variables). Traditionally, these types of Reports are referred to as columnar Reports. In particular, Matrix report is a variant of automatic auto column reports, where the columns are repeated over a variable associated at the Report. The collection repeated with this variable is used to populate the repeated values into the variable. The method value in the detail line is extracted from a different collection, based on the corresponding row and column indexes.

The latest enhancements in the area of Columnar Reporting enables us to design the reports using a new approach altogether. A field within a line can display method values from multiple objects of the collection. Context Free repeat within the part and line enable repetition on simple as well as list variable values. These features give a better control in the hands of the programmer

These features give a better control in the hands of the programmer in designing such reports.

If we consider the above report layout, the labels in columns can now repeat over a collection of Parties. The data in the cells can be populated based on the combination of row and column label values across the dimensions. In the previous table, for example, the highlighted cell contains the value of total sales quantity corresponding to the party “Party 2” for the Stock Item “Stock Item 2”.

The following enhancements have been enabled to achieve this functionality:

‘Repeat’ Attribute for Part and Line over a Collection

Context Free Repeat for Part and Line, together with SET/Break On

Usage of the function

$$LineObject

The Repeat Attribute has been enhanced consistently across Part and Line Definitions to support Context Based as well as Context Free Repeat.

The common syntax allows the repetition of a contained line, with or without a collection.

Syntax

Where,

Context based Repeat – The Repeat attribute of the Part can repeat the contained line over a collection. Each line in this case is associated with each object of the collection. This was the earlier capability even before chúng tôi 9.

Context Free Repeat – From Release 1.8, the Collection parameter in the above syntax has been made optional. This allows the repetition of a contained line without a collection. Since the no. of times the line has to be repeated is not known, the usage of the attribute SET to specify the count becomes mandatory. In case of ‘Edit’ mode, the attribute ‘Break On’ can be used to specify the terminating condition for repetition.

So far, the Repeat attribute at Line definition has been accepting only a field name which internally uses the repeat behaviour of the Report and Variable for determining the no. of times it can be repeated. This attribute has now been enhanced to support the consistent syntax to enable “Context Based” and Context Free repetition of the same field horizontally.

Syntax

Where,

Context based Repeat – The ‘Repeat’ attribute of the line can repeat the contained field over a collection. Each field in this case is associated with each object of the collection.

Context Free Repeat – The collection parameter in the above syntax is optional. This allows the repetition of a contained field without a collection. Since the no. of times the field is to be repeated is not known, the usage of the attribute SET to specify the count becomes mandatory. In case SET is not specified, the Field will be repeated as per the existing Columnar behaviour.

Example 1: Item-Wise Party-Wise sales quantity report using Context-Based Repeat of Field

Following is the code snippet to design the above report using enhanced columnar capability:

Collection definitions for Stock Item wise Party, sales quantity etc., are as follows:

[Collection : Smp CFBK Voucher]

Type : Voucher

Filter : Smp IsSalesVT

[Collection : Smp Stock Item]

Source Collection : Smp CFBK Voucher

Walk : Inventory Entries

By : IName : $StockItemName

Aggr Compute : BilledQty : SUM : $BilledQty

Keep Source : ().

Filter : SmpNonEmptyQty

[Collection : Smp CFBK Party]

Source Collection : Smp CFBK Voucher

Walk : Inventory Entries

By : PName : $PartyLedgerName

Aggr Compute : BilledQty : SUM : $BilledQty

Keep Source  : ().

Filter       : Smp NonEmptyQty

[Collection n : Smp CFBK Summ Voucher]

Source Collection : Smp CFBK Voucher

Walk : Inventory Entries

By   : PName : $PartyLedgerName

By   : IName : $StockItemName

Aggr Compute    : BilledQty : SUM : $BilledQty

Keep Source     : ().

Search Key      : $PName + $IName

[System : Formula]

Smp IsSalesVT   : $$IsSales:$VoucherTypeName

Smp NonEmptyQty : NOT $$IsEmpty:$BilledQty

From these Collections, following can be observed:

The Rows, i.e., Stock Items, are repeated over the Collection ‘Smp Stock Item’.

The Columns, i.e., Party Names, are repeated over the Collection ‘Smp CFBK Party’.

The Intersection values between these Rows and Columns, i.e., Item wise Party wise Sales Quantity, are set using the Collection ‘Smp CFBK Summ Voucher’. This Collection is indexed on Methods $PName + $IName using the Collection Attribute ‘Search Key’. Thus, the Collection is indexed on Party Name and Stock Item Name, which makes it unique across all the Objects within the Collection ‘Smp CFBK Summ Voucher’.

The Lines for Title and Details are repeated for the Party Names as shown below:

[Line : Smp CFBK Rep Title]

Use : Smp CFBK Rep Details

Local : Field : Default : Type : String

Local : Field : Default : Align : Center

Local : Field : Smp CFBK Rep Name : Set as : “Particular s ”

Local : Field : Smp CFBK Rep Name : Widespaced : Yes

Local : Field : Smp CFBK Rep Party : Set as : $PName

Local : Field : Smp CFBK Rep Party : Lines : 0

Local : Field : Smp CFBK Rep ColTotal : Set as : “Total”

[Line : Smp CFBK Rep Details]

Fields : Smp CFBK Rep Name , Smp CFBK Rep Party , S mp CFBK Rep Col Total

Repeat : Smp CFBK Rep Party : Smp CFBK Party

Title Line uses the detail line where the Field Smp CFBK Rep Party is repeated over the Collection “Smp CFBK Party”. In the Title Line, the Field “Smp CFBK Rep Party” is set with the value “$PName”, which sets the Party Names from the Collection “Smp CFBK Party”.

Retrieving the values in cells based on Party name available from context and stock item name available in the field as shown below:

[Field : Smp CFBK Rep Name]

Use : Name Field

Set as : $IName

Display : Stock Vouchers

Variable : StockItemName

[Field : Smp CFBK Rep Party]

Use : Qty Primary Field

Set as : $$ReportObject:$$CollectionFieldByKey:$BilledQty:@SKFormula:SmpCFBKSummVoucher

SKFormula : $PName + #SmpCFBKRepName

Format : “NoZero”

Border : Thin Left

In this code snippet, we can observe that the Field Smp CFBK Rep Party is the intersection between rows & columns. The value is gathered from the Collection Smp CFBK Summ Voucher using the function $$CollectionFieldByKey, where the Index Key in the current context is passed as a parameter. “$PName” in the current object context returns the Party Name. Similarly, the Field Value #SmpCFBKRepName in the current context returns the Stock Item Name. Hence, the Search Key Index “Party Name + Stock Item Name” for every Intersection point is passed to this function, which extracts and returns the corresponding Quantity from the Collection.

Calculating Field Level Totals, i.e., Stock Item Totals, across all Parties is done using the Line Attribute ‘ Total ’ and the Function $$Total , as shown below:

[Line : Smp CFBK Rep Details]

Total : Smp CFBK Rep Party

[Field : Smp CFBK Rep Col Total]

Use : Qty Primary Field

Set as : $$Total:SmpCFBKRepParty

Line Smp CFBK Rep Details contains an Attribute ‘Total’, which accepts Field Names as its value. In other words, we declare at the Line that the Fields are to be summed for later use. This sum gets accumulated and rendered in the Field “Smp CFBK Rep Col Total”, where the function

$$Total returns the accumulated Total for the given Field Name as the Parameter to this Function.

Currently, Tally supports printing of multiple forms within a single report in single orientation only, i.e., all the forms within a report can be printed either in Portrait or in Landscape format only, as specified in the report.

In order to support the printing of multiple forms within a single report in different orientations, the behaviour of Variable SVPrintOrientation has been enhanced.

To achieve this behaviour, the local declaration of the Variable SVPrintOrientation at Report level is mandatory, and its value must be set using the form level attribute ‘Set Always’ in individual forms.

This will be very useful in scenarios where multiple forms are being printed from a single report. For example, from a Payment Voucher, one needs to print both Voucher and Payment Advice. However, the Payment Voucher needs to be printed in ‘Portrait’ form, and the Payment Advice in Landscape.

Example

[Report: TSPL Smp VarSVPrintOrientation Extended]

Form : TSPLSmpVarSVPrintOrientationFrm1,  TSPLSmpVarSVPrintOrientationFrm2

Variable : SV Print Orientation : String

[Form: TSPL Smp VarSVPrintOrientation Frm1]

Set Always : SV Print Orientation : “Portrait”

[Form : TSPL Smp VarSVPrintOrientation Frm2]

Use : TSPL Smp VarSVPrintOrientation Frm1

Set Always : SV Print Orientation : “Landscape”

In this example, the report TSPLSmpVarSVPrintOrientation Extended has two forms, viz. TSPLSmpVarSVPrintOrientationFrm1 and TSPLSmpVarSVPrintOrientationFrm2 .

Based on the value set to the variable SV Print Orientation, both the forms are being printed in the respective orientation.

Multiple-Column feature in chúng tôi 9 has till date been used by the Tally users for various reporting needs like Comparative Analysis of Data across Multiple Periods (Months, Quarters, Years, etc.), Multiple Companies, Multiple Godowns, etc. It can also be used for comparative study of various parameters like Budget vs. Actual Performance, by getting the same displayed in the form of a column-based report.

From Release 4.7 onwards, support for Multi Columns has been extended to Edit Mode too, to enable the developer to design and implement such functionalities in Tally, as per requirement.

To make this possible in TDL, the Horizontal Scrolling behaviour has been enhanced to work in Edit Mode, which will enable the developer to create a user friendly interface, thereby allowing the user to enter data conveniently in tabular format. To achieve the columnar scrolling behaviour; in TDL, fields within the required line can be repeated over either of the following:

Collection of Objects , OR

Sub-Collections under a Primary Object, provided the Sub-Collections contain Object(s)

In the absence of the above ‘Repeat’ specification, the only criterion to repeat the Fields/ Columns is that the number of Fields to be repeated must be known to the Line.

 With respect to Object context, Horizontal Scroll will only happen if Objects/Sub Objects, on which Columns are to be repeated, exist. In other words, in Create Mode with Object Context, Horizontal Scroll will not work as the number of fields to be repeated is not known.

Please note that In TDL, to make the programming simpler and to optimise the reporting and query area, we have introduced two definitions – Rule Set and Name Set, and two data types – Flag Set and Num Set.

Rule Set is a definition in TDL and can be used to define a set of rules. You can use this definition to evaluate the rules efficiently. Rule Set can be defined with a single dimension or multiple dimensions along with flow control. The attribute Rule Set and related functions help to evaluate the defined Rule Sets. The result of a Rule Set is always an Object method of Flag Set data type. The functions related to Flag Set data type allow you to access the Flag Set. Storing the Flag Set result in the database is currently not supported. For example, during voucher acceptance, the Rule Set can be used to check the correctness of data.

The definition Rule Set makes TDL programming simpler because of its ability to allow a developer to scope only one validation at a time and not all of them together. It reduces the code size. It also provides the named identity to access flag set values. Rule Set increases the efficiency of the programme, which is measured on performance and memory usage.

Syntax

Where,

Various attributes and functions, which are related to Rule Set are explained below:

Break On is a single type attribute with constant value. You can use the attribute Break On in Rule Set definition to determine the continuation of evaluation in the current rule set. It provides vertical flow control to evaluate the rules. Break on can also be mentioned with Rule attribute.

Syntax

While evaluating each rule,

If the value of Break On matches with the result of the rule, then the evaluation flow will break and further rules are not evaluated in the current Rule Set. The remaining rule values default to No .

If the attribute Break On is not specified, the evaluation flow continues, irrespective of the result of rule.

Walk On is a single type attribute with constant value. The attribute Walk On helps to determine whether the next dimension will be evaluated or not, for the current rule. It has diagonal flow control to evaluate the steps.

Syntax

While evaluating each rule,

If the value of Walk On value matches with the result of the rule, then the evaluation flow continues to evaluate the next dimension in the current rule context. If the next dimensions are not evaluated, the rule values default to No.

If the attribute Walk On is not specified, the evaluation flow continues to evaluate the next dimension, irrespective of the result of the rule.

Rule is a Triple list attribute. You can use the attribute Rule to define a rule. It accepts three parameters.

Syntax

Where,

Possible options are

True/Yes: When the result of the rule is True/Yes, it stops the evaluation further in the current rule set. The next dimension gets evaluated for the current rule.

False/No: When the result of the rule is False/No, it stops evaluating further.

Never: It continues the evaluation, irrespective of rule result.

Reports Of Linux’s Desktop Death Are Premature

Given all the dismal market-share statistics so lovingly reproduced by Microsoft and like-minded partners, it’s not entirely surprising to see observers declare that the dream of the Linux desktop is dead.

The problem with such statistics, however, is that they are not an appropriate way to measure the uptake of a free piece of software. In general, such market-share data is based on sales figures: “X copies of Windows sold per month translates into Y market share for the operating system,” for example.

But how is Linux obtained? Unless it’s purchased with paid support–surely a minority of cases–it’s typically a free download, with no sales transaction involved.

Certainly there are sites, such as DistroWatch, which keep tabs on page hits for each Linux distribution, thereby providing a snapshot of market interest, if nothing else. Canonical, meanwhile, recently started tracking original equipment manufacturer (OEM) installations of its Ubuntu Linux.

But is Linux really dead on the desktop? I don’t think so. Here’s why.

The most obvious news from the Linux Foundation’s study last week was that Linux is blowing Windows away on servers, and will continue to do so in the coming years. Servers and embedded uses, indeed, are where Linux currently does best, so that wasn’t entirely surprising.

To me, that just doesn’t sound like the business world’s response to something that is dead.

It’s also important to realize that Net Applications’ measly .85 percent figure is by no means the only one out there–it’s just the best publicized.

W3Counter, for one, gives a 1.5 percent share for Linux in September–a marginal improvement over the figure from Net Applications, but still a little better. Wikimedia’s Visitor Log Analysis Report for this summer, meanwhile, puts Linux at 1.9 percent, while an O’Reilly Media estimate puts it as high as 10 percent.

Again, though, the bottom line is that there currently isn’t any way to know exactly how many desktop users Linux has. Drawing conclusions from these figures is like conducting a census by counting only the people who happen to be out on the street at any given time.

Then, of course, there’s Ubuntu, which has long been the most popular and consumer-friendly Linux distribution out there. I have to say that the excitement over the recently released version 10.10–Maverick Meerkat–surpassed anything I have seen before.

Not that that’s surprising, mind you — Ubuntu is the biggest “brand name” in the Linux world, and it’s far and away the most popular distribution on DistroWatch. This latest release, too, is clearly the most consumer-friendly Ubuntu so far, and multitouch capabilities are now a part of its netbook edition. Canonical’s R&D efforts for Ubuntu also suggest that there’s great promise for the future.

With Ubuntu, so many of the issues that have dogged Linux on the desktop in the past–such as drivers–are going away. I believe Ubuntu is Linux’s best tool for extending further into the mainstream, and recent data shows that’s already happening. Just today, for instance, Australia’s Sydney Linux Users Group said that the operating system is visibly reaching past the Linux community and into wider mainstream usage than ever before, with schools and government agencies among the country’s leading users.

None of this is to say that Linux doesn’t still face challenges, of course. Inertia, first and foremost, is what maintains Microsoft’s monopoly, I believe, along with Redmond’s active efforts to preserve it. Then, too, there’s Linux’s fragmentation, lack of a single corporate sponsor and lack of marketing–the all-important tool that keeps Apple in the game, in particular.

There’s also the question of whether the desktop will even matter in a few more years, as cloud and mobile computing increasingly take hold.

Follow Katherine Noyes on Twitter: @Noyesk.

Motorola Stingray Tablet For Verizon Landing First Quarter 2011

Motorola Stingray Tablet for Verizon Landing First Quarter 2011

We’re just about into the third quarter of 2010, which means that wireless carriers are getting ready to release one last salvo at the consumer. With the holiday shopping season upon us, there’s no surprise here that Verizon would be gearing up to release a plethora of handsets before the end of the year. And, while there’s plenty of big names being dropped, the main takeaway from the leak today, is that the Motorola Stingray tablet, which will feature Android 3.0 “Gingerbread,” won’t be making its presence known until after the holiday shopping season.

First though, let’s go through the rest of the leak. According to a tipster, Engadget believes that quite a lot is going to happen with Verizon here in the coming months. Firstly, it looks like the BlackBerry Storm 3 from Research In Motion is actually cancelled. Their source says that it may still show up somewhere, but that it isn’t coming out for Verizon. Additionally, the BlackBerry Curve 3G, Tour, and Bold 9650 are all getting software updates some time in October, which are meant to address some known issues with the devices.

And that’s it for non-Android related handset news. According to the tipster, Verizon is still pushing Android hard, and it shows from the products being mentioned here. The Samsung Continuum (SCH-i400, which broke cover earlier today), is set for a late October release, and it will feature that dual-screen front, with the 1GHz processor under the hood. Motorola has a Venus handset coming out in October, too, and it’s billed as featuring a full physical QWERTY keyboard, with a “BlackBerry look and feel.” There’s going to be a 1GHz processor under the hood here, too.

The Motorola Droid Pro, or the Global/World Edition if you prefer, is set to launch in late October, or early November, and it features a 1.3GHz processor, as well as global capabilities. And then the HTC Merge/Lexicon/Lexikon is set to launch at almost the same time as the rest of them, slated for late October or early November. This is the device that features a full slide-out physical QWERTY keyboard, and a 1GHz processor. And then there’s LG’s effort into the Android party, with a handset that may actually be worth awhile (unlike what they have on offer here in the States now). It will have the same body as the LG enV Touch, but it will be called the LG enV Pro. It will also have a 1GHz processor under the hood.

Rounding it up, the Verizon FiveSpot is set to launch next month, while three LTE modems are set to launch in November, and finally an LTE MiF is set to break cover some time after all that. The rumor has it that the FiveSpot from ZTE will launch on October 6th. The three LTE modems are set to come from manufacturers Pantech, LG, and Novatel. And, as you may have guessed, the MiFi will launch from manufacturer Novatel.

The Motorola Stingray tablet, which was first rumored to be “just another tablet,” is actually looking better. The tipster says that it will feature a 10-inch display, run Android 3.0 “Gingerbread,” but that it isn’t due for release until some time in the first quarter of 2011. There will be 16GB of on board storage, and you’ll also find NVIDIA’s Tegra 2 processor under the hood. But, what’s better, is that the tipster suggests that it will be able to be “hardware upgraded” to LTE, when the time comes.

[via Engadget]

Update the detailed information about Techtarget Reports Second Quarter 2008 Financial Results on the Cancandonuts.com website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!