473,883 Members | 1,527 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

What so special about PostgreSQL and other RDBMS?

Beside its an opensource and supported by community, what's the fundamental
differences between PostgreSQL and those high-price commercial database (and
some are bloated such as Oracle) from software giant such as Microsoft SQL
Server, Oracle, and Sybase?

Is PostgreSQL reliable enough to be used for high-end commercial
application? Thanks
Jul 20 '05
125 14933
Daniel Morgan wrote:

... otherwise stop promoting freeware
as though it was worth more than its price.


Your true colors are showing, especially when I see all the newsgroups this is
crossposted to. Shill be gone!

Matt O.
Jul 20 '05 #31
Matt O'Toole wrote:
Daniel Morgan wrote:

... otherwise stop promoting freeware
as though it was worth more than its price.

Your true colors are showing, especially when I see all the newsgroups this is
crossposted to. Shill be gone!

Matt O.


I didn't start this thread. So if you wish to shoot the source.
Improve your aim.

And ... BTW ... learn the meaning of words before you use them.

--
Daniel Morgan
http://www.outreach.washington.edu/e...ad/oad_crs.asp
http://www.outreach.washington.edu/e...oa/aoa_crs.asp
da******@x.wash ington.edu
(replace 'x' with a 'u' to reply)

Jul 20 '05 #32
"Mookstah" <do**********@m ailbox.com> wrote in message news:<40******* *@news.bezeqint .net>...
As Dave here said, most of the application around don't need more than what
PostgreSQL or MySQL gives.
MySQL as i see it has a better future, and i wouldn't bet on an application
with unknown future.


Ah, the typical small database might be easily handled by either of
the above. However, I still wouldn't recommend MySQL: portability
between mysql & any other database is hampered by their non-ansi sql,
their lack of basic sql features results in bizarre application code,
and their amazing exception handling problems means that quality
errors should be considered the norm - not the exception.

And yeah - it does have a pretty bright future. But by the time they
completely rewrite the engine to handle basic sql, transactions, etc -
it'll be a completely different product.

buck
Jul 20 '05 #33
Quirk (qu***@syntac.n et) writes:
You can always write bad code, my point being that if you are using a
commcial SQL server, such as Oracle, you should abstract your data
access so that you can use something else instead down the road, you
can do this with your own wrappers through elegent coding, or use a
class such as PEAR::DB (for PHP), depending on what your application
requirs. Efficiency is very relative, eficiency of what? Code
Executution? Application Extension? Interoperabilit y? Tip: The first
is not always the most important.


This may sound good in theory. Real life is different.

One should keep in mind that few tools are so extremely powerful to make
things go really slow as database engines.

There are of course applications where portability is a requirement. I
once had contact with a small company who authored a system for producing
financial reports for big corporations. Their philosophy was that they
could not mandate which engine to use, so they aimed at portability. I
guess that was a fairly small system.

The system that I work with now runs only on RBDMS: MS SQL Server. This is
a business-critical system for our customers, and if I had support multiple
platforms, I would not be able to give our customers acceptable performance,
nor acceptable functionality. At least not to acceptable prices.

A competitor of ours were working on a replacement for their current
system - which dates from the end of the 1980s - and they worked just
along the line they suggested. Their owners poured in around 250
million SEK into that work, and the system is far from completed. That
competitor recently fired about 80% of their staff, and that new
system will never be completed.
--
Erland Sommarskog, SQL Server MVP, so****@algonet. se

Books Online for SQL Server SP3 at
http://www.microsoft.com/sql/techinf...2000/books.asp
Jul 20 '05 #34
bu*********@yah oo.com (Buck Nuggets) wrote in message news:<66******* *************** ****@posting.go ogle.com>...
qu***@syntac.ne t (Quirk) wrote in message news:<4e******* *************** ***@posting.goo gle.com>...
... my point being that if you are using a
commcial SQL server, such as Oracle, you should abstract your data
access so that you can use something else instead down the road, you
can do this with your own wrappers through elegent coding, or use a
class such as PEAR::DB (for PHP), depending on what your application
requirs. Son, it sounds like you're the victim of some simplistic advise from
database 101 book:
Ok Dad, it sounds like you're the victim of the patronizing ass school
of discourse. My condolences to your coleagues.
1. database portability is not (typically) as important as
application portability - since applications come & go far faster than
databases change, and some databases support multiple application
technologies (java + .net, php + python, etc).
Both are important, which is more important depends on the data and
the application, in both cases my advice to either rely on open
standrads or abastract access when possible holds true.
2. abstraction layers can often cause more complexity than they
solve, unless the project is fairly sizable
I agree, when you have the perpetual right to the database and It's
source code, but if you are using a proprierty database then not using
an abstaction layer is folly, unless the project is so small that the
code is disposable.

Abstracting your data access can be as simple as writing a function to
use as a wrapper OR as complex as a full blown data access object,
depending on the application.
3. the most powerful SQL capabilities are seldom supported in
abstraction layers - living without OLAP capabilities, for example,
means that you're limiting the usability & functionality of the
application.
I have no argument here, as so far this is true, but experience
prompts me to bring up two points: First is how often are 'powerful
SQL capabilitites' used to compensate for poor database design?
Second, how certain are you that Proprietary databases (in fact than
YOUR particular one) always have more features than Open Source (or
Competetive Alternatives) ones to justify engineering your application
so that you are dependant on it forever?

I know, the answer is 'depends', but I hope you see what I'm getting
at.
4. having said all that - yeah, go with portable sql as much as you
can, and only deviate if there's a value in doing so. But don't work
yourself up into a religious hysteria about it.
I agree, I never said anything different, the only time you *must*
abstract your data access is when your application and/or it's data
has a long expected life time and depends on a prorietary Database.
> - If your data is really important to you, you will use network, not
> application or database level security to protect access to it.
Don't be a fool, implement security measures on each level.


OK Mr. T. I agree. What I was really argueing against where those
(like Volker) who think that Database security is a replacement for
network security, I'm trying to make it clear that network security is
more important, since databasy securite depends on it, although, yes
both are important.
> - Your primary datastore should be self contained, self describing and
> human readable, something like a heirarchy of XML files. This is the
> best way to ensure the perminancy and portabilty of your important
> data.

That's a damn funny idea
I'm a funy guy, always good for a laugh or two.
- now exactly how do you plan to keep the
6000 tables from a SAP financial database for a fortune 100 updating a
hierarchy of XML tables?
It was only an example, one that for some applications makes sense,
you can always randomly chose an example wher it does not make sence
but this, my silly friend, is what is know as a straw man.

I guess this would be a good time to mention that SAP has been working
closely with MySQL these days.
You realize that the database is never
static, that performance & quality are already tough challenges
(without non-acid writes to XML files).
Yes I do realize this, but don't let my understanding discourage you
from further random blather if it makes you feel smart.
And you must also realize
that nobody will care about that detail of that data in 30 years,
right?
To bad you didn't realize that I never suggested otherwise.
Oh yeah, and if you *really* want to archive it you'll keep it
on non-acid paper instead of in an electronic archive.
Perhaps, but paper is not always superior to some sort of WORM
storage, provided you use an intellegent storage format, my main point
is that an imcomprehensibl e file system blob, readable only by a
deamon for wich you have no source code, is not such a format.
Now - getting
transactions to span a print-device - that would make for an
interesting little undergraduate project.
I would consider redundant WORM devices instead.
Here's the thing - you've got yourself a nice objective there, and I
encourage you to pursue it. Just keep in mind that complex XML isn't
"human readable", that it doesn't contain sufficient business rules
and integrity constraints to be fully "self describing" either.
Thanks for the XML tips.

Sheesh. Where were you when I was writing my Pull DOM to DOM parcer?
So,
ten years from now if you really wanted to read that data (and most
often you won't) you really won't have a clue what it means - due to
the massive loss of context. Sure, you'll be better off than if you
had a file format you couldn't read at all - with XML you'll probably
be able to find a way of structuring the data (got help you if you
can't). But you will still have spent a lot of time & money on a
solution that'll fail you in the end.
Ok so your argument amounts to that since any approach *MIGHT* fail, I
should recomend the aproach that *WILL* fail?

What the hell are you trying to say?
So, you've got yourself a fine start on database technology. Now, go
get yourself a job, keep these objectives in mind, and in a few years
discover the wisdom in what Yogi had to say:
"In theory there is no difference between theory and practice. In
practice there is."

*
If I happen to meet the unemployed, inexperience person you imagine
you are talking to, I'll tell him that the ignorant pompous ass says
hello.

Cheers.
Jul 20 '05 #35
ed*****@highstr eam.net (Edward Lloyd Hillman) wrote in message news:<10******* ******@news.sup ernews.com>...
You have no such right, ever, the only right you _can_ have is the
right to modify it yourself or contract someone to do it. Please read
your licence.

Got a news flash for ya...


Oh boy, it's Seseme Street News, OK Kermit, keep talking.
If you have a maintenance contract with a vendor and something of
theirs' is broken, they must fix it if you need it.
Perhaps, but when the product in question is proprietary you have no
recourse when they fail, because no one else has any right to modify
the source code.

When you have a right to the source code you can sign such a contarct
with any firm you like, and fire their ass and hire another when they
fail.
I know this
because it happend to us recently at work. We found something broken
it a version of a prticular commercial RDBMS that had been fixed in a
later release, but due to customer requirements we cannot yet upgrade
to that version (i.e., the customer is unwilling to pay for it at this
time). The vendor didn't want to fix it but because the customer is
paying them beaucoup bucks for a maintance contract we demanded that
they do so. They did and supplied us with the necessary patch.
I'm not sure what this example is supposed to illustrate. The vendor
failed to fix the bug originaly and ony did so under dures, which only
shows how vulnerable you where to begin with, if you had the right to
say 'OK, were going to fire you and give someone else the contract'
they would have fixed your bug pronto with no back talk. In anycase,
you were lucky the vendor did decide to support you, other folks in
the same situatuion have not been so lucky.
The only way you can get that kind of support is with a maintance
contract. With Open Source we'd have had to spend many extra
man-hours trying to find where the problem was and how to fix it
without breaking anything else.
Why? You could have the exact same contarct with a vendor supporting
an open source product, or negotiate access to source for the vendors
product, the only difference being that you then have leverage. Or
failing that, your application could have been designed to to give you
alternatives,

You programmed yourself into a corner, and are now trying to use your
folly, which nearly cost you a customer, as a positive example.
Interesting.

It is people like you that warm the hearts of confidence men
everywhere.
And we didn't hace the time to fool
with such nonsense as this occurred in a production application that
had to be up 24x7x365.


But you put yourself in a position were you may have been unable you
support your own customer _AT_ALL_ except for the good graces of your
vendor. I pitty your customers if they really do expect to get
24x7x365 under such an arrangement.

Cheers.
Jul 20 '05 #36
Erland Sommarskog <so****@algonet .se> wrote in message news:<Xn******* *************@1 27.0.0.1>...
Quirk (qu***@syntac.n et) writes: The system that I work with now runs only on RBDMS: MS SQL Server.


Well, I hope that the other readers of the thread now know enough to
never hire a company as stupid as yours.

I hope you one day learn how to write real software before your
unskilled labour is no longer needed in the industry.

Cheers.
Jul 20 '05 #37
Quirk wrote:
Son, it sounds like you're the victim of some simplistic advise from
database 101 book:


Ok Dad, it sounds like you're the victim of the patronizing ass school
of discourse. My condolences to your coleagues.


Apparently you went to that school too ... and graduated with honors.

--
Daniel Morgan
http://www.outreach.washington.edu/e...ad/oad_crs.asp
http://www.outreach.washington.edu/e...oa/aoa_crs.asp
da******@x.wash ington.edu
(replace 'x' with a 'u' to reply)

Jul 20 '05 #38

"Quirk" <qu***@syntac.n et> schrieb im Newsbeitrag news:4e******** *************** *@posting.googl e.com...
ed*****@highstr eam.net (Edward Lloyd Hillman) wrote in message news:<10******* ******@news.sup ernews.com>...
You have no such right, ever, the only right you _can_ have is the
right to modify it yourself or contract someone to do it. Please read
your licence.

Got a news flash for ya...


Oh boy, it's Seseme Street News, OK Kermit, keep talking.
If you have a maintenance contract with a vendor and something of
theirs' is broken, they must fix it if you need it.


Perhaps, but when the product in question is proprietary you have no
recourse when they fail, because no one else has any right to modify
the source code.

I have, at most, the right to sue them, at least, the right to cancel the
contract which hurts them way more than if I go to a postgres developer
and tell him I'm not interested any more. So, unlike open source developers,
they actually have an interest in doing something.

When you have a right to the source code you can sign such a contarct
with any firm you like, and fire their ass and hire another when they
fail. But it doesn't make sense to use any other firm than the guys who wrote it.
See my other postings and the reply about division of labour. You might
also read up on Maos Great Leap Forward and north coreas policy of doing everything
themselves.
I know this
because it happend to us recently at work. We found something broken
it a version of a prticular commercial RDBMS that had been fixed in a
later release, but due to customer requirements we cannot yet upgrade
to that version (i.e., the customer is unwilling to pay for it at this
time). The vendor didn't want to fix it but because the customer is
paying them beaucoup bucks for a maintance contract we demanded that
they do so. They did and supplied us with the necessary patch.
I'm not sure what this example is supposed to illustrate. The vendor
failed to fix the bug originaly and ony did so under dures,

The point was that contracts work.
which only
shows how vulnerable you where to begin with, Why was he vulnerable if he had a contract that required the vendor to work?
if you had the right to
say 'OK, were going to fire you and give someone else the contract'
they would have fixed your bug pronto with no back talk. Maybe, but in case of open source software they'd say 'Good luck
working into our source code, see you in two years'.
The only way you can get that kind of support is with a maintance
contract. With Open Source we'd have had to spend many extra
man-hours trying to find where the problem was and how to fix it
without breaking anything else.


Why? You could have the exact same contarct with a vendor supporting
an open source product,

Yes, but then it would cost like any other product, right?
or negotiate access to source for the vendors
product, the only difference being that you then have leverage. The access to the source means nothing, see above.
Or
failing that, your application could have been designed to to give you
alternatives, Right. And the customer throws away years of experience with one db system
and pulls a finished, reliable and maintainable alternative installation out of the hat.
Including people who have been trained on it.
In what way is a change from oracle to db2 easier than a change from
postgresql to mysql?

You programmed yourself into a corner, and are now trying to use your
folly, which nearly cost you a customer, as a positive example.
Interesting.

It is people like you that warm the hearts of confidence men
everywhere.
And we didn't hace the time to fool
with such nonsense as this occurred in a production application that
had to be up 24x7x365.
But you put yourself in a position were you may have been unable you
support your own customer _AT_ALL_ except for the good graces of your
vendor.

Why? He doesn't support the db. The db vendor does that. All he has to do is to
show that it's othe db's fault, at which point his customer's maintenance
contract with the db vendor kicks in. Normal business practice.
I pitty your customers if they really do expect to get
24x7x365 under such an arrangement.

Oh, they do get it. Because it's in the contract, you know?

Greetings!
Volker
Jul 20 '05 #39

"Quirk" <qu***@syntac.n et> schrieb im Newsbeitrag news:4e******** *************** *@posting.googl e.com...
"Volker Hetzer" <vo***********@ ieee.org> wrote in message news:<c7******* ***@nntp.fujits u-siemens.com>...
"Quirk" <qu***@syntac.n et> schrieb im Newsbeitrag news:4e******** *************** **@posting.goog le.com...
> That's not true. Yes it is.
What was the value of this reply?


What was the value of yours? Or this latest one?

A question is not an answer.
The main problem is not the right to the source code
> but the right to get maintenance.

With out the right to modify the source code you can have no "right to
maintenenence" as all rights are held by one vendor, exactly the sort
of dependency I recomond avoiding.
I do have the right to maintenance, because that's in the contract. Very
simple.
Yes, you have the right to be overcharged for work that may or may not
not suit your needs by only _one_ vendor, and no right to go elsewhere
when they fail, ignore you outright, stop supporting your application
or vanish from the face of the earth. Have you actually read your
contract or software licence?

Of course. See the end of this posting.
It only protects the vendor, not you. I've read the licence and done even more: I've used the software and tested the contract. The right to modify is a red herring.

Not if your application and the permenancy of your data is important.
You didn't read my posting, right?
You are one funny guy. Really. I'll bet you're the first guy in usenet
to ever ask this question rhetoricly.

Nice way of avoiding an answer.
I don't *want* to create my own development
team competing with the original one. I don't want to merge my change back
into their code with every new release! I don't want to develop code and
then have them decide whether they condescend to incorporate it or not! I
want the authors of the software to do the coding based on what I'm willing
to pay for!
You are dependent on their licence

I'm dependent on the author's licence regardless of which database I use.
It's just that some licences give me the illusion of being able to do something
while mainly giving me in reality the ability to shoot myself in the foot or paying
someone else to shoot me in the foot.
because you built your own
application on top of a platform for which you have no source code, Same question: Did you read what I wrote?
I don't care about the source code, I care about product and support
quality. And, since I am not the developer of the software, nor is anyone else,
apart from *the* developers, anyone else is going to make a worse job than
them. So, I get the best support when I'm paying them and no one else.
and no right to modify, you then also have no leverage with the vendor
of the orginal software.

You have no rights at all, wether or not you are willing to pay. Read oracles licence some time. There it says very clearly what
you get if you enter a support agreement.
Elegant coding... The holy grail of software engineering. Why am I
spontaneusly reminded of http://www.dilbert.com/comics/dilbert/archive/
dilbert-20040417.html ?
I dunno, because you're culturaly issolated and have a poor
imagination?

No, it's because the phrase "elegant coding" is just as empty.
Or as the phrase "the one true god" uttered by people of
different religions.
For db computing, reducing server load is the important thing.
No, it is not, in most cases CPU is not the most limited resource.
Interoperabilit y
typically means primitive, network/db intensive sql.

Yup. Which, in a well configured db is CPU load because
caching, indexing and db specific sql takes care of the i/o load.
Nevertheless, I concede, it *is* possible to have such a
horribly configured system that i/o load becomes an issue. It's also
possible to have a database that permits so few actions
that the dba can't do anything about a badly written app.
fortunately, oracle is different.

No, interoperabilit y means abilty to integrate applications in a
heterogeneus environment. It means standards and flexibilty. So? What's more "standardis ed" about mysql's socket interface than
about oracles OCI or ESQL?
If it's important it must not matter whether one tries to
> access the data from a local or remote machine. Interesting that you believe that this can not be accomblished with
network security.
Yes. Now you figure out why.
Because you don't know what you are doing maybe?

Wrong. Try again.
Oh wait, you don't
need to, after all, you have decided to pay a vendor to know for you,
I remember now. Right. The alternative is not paying anyone and trying to figuring out the
source code on my own, right? Or paying someone else who starts
from scratch too?
Yes, a securely configured database, protected by a secure network,
the later being far more important!
A network will alway have holes, simply because legitimate users
have to get through and legitimacy can change while they are in.
Therefore you protect the data where they are. In the db.
If your network has holes, then your database is insecure, because I
can get right at the filesystem blobs, the reverse however is not
true.

Care to elaborate? An insecure network does not mean that someone can
log on to the database server from anywhere but the console screwed onto
it. And securing the listener (in case of oracle) is part of the database
configuration.
What is it about "Self Contained, Self Describing, Human Readable"
that you do not understand?
The fact that you believe such a thing exists. Unless you mean a printout
of the database contents.
What is it about "Self Contained, Self Describing, Human Readable"
that you do not understand?

See above.
In any case, permanency across more than two major database or other
> software releases is difficult, regardless of the format. For unskilled labour, yes.
Right. You show me how do convert VENUS chip designs into Synopsys
without going into a museom for the original hardware and getting all
the versions in between.
What does this have to do with "Self Contained, Self Describing, Human
Readable" files that can be read on any system past or present?

It has to do with permanency. Try to read what you quote.
That is why vendor educated developers who
can not see passed their favourite commercial product should not be
asked for advice on this subject.
Get some real world experience.
Wow. Not only a comedian, but also a master logician.
What a compelling argument,

Thanks.
tell me, how much do you know about my
experience, What your arguments tell me.
and why do you feel that talking about _me_ is a response
to my argument? Because your argument isn't backed by anything. Give me some
substance and we can talk about it. All I've hear so far is the
usual open source rethoric about me or someone else being able
to magically support a product in a few days or weeks after the
original developers have abandoned it, or me.
If you have the source code, you are the developer,
Wrong. I am the user, t.
Oh, well then I guess we have nothing further to discuss, my comments
here where meant for actual developers.

So, oracle people should further develop oracle and mysql people
mysql. Did I get this right?
if you contract an
outside developer or licence an existing product, fine, as long as you
have perpetual access to the source code and the *right* to modify it,
or contract someone else to. If you do not, than you can not gaurantee
the permenance of your application.

When will you get it, I don't *need* the right to modify it as long as I
have the right to have it modified by the guys who wrote it in the first plac
and are competent at it.


You have no such right, ever, the only right you _can_ have is the
right to modify it yourself or contract someone to do it. Please read
your licence.

"Assistance with my SRs 24 hours per day, 7days a week". Practically I usually
get two or three guys working on a typical SR of mine, depending on how
log it takes. Without a contract I'd get a 'buzz off, I'm doing my exams this month'.

Volker
Jul 20 '05 #40

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

17
764
by: Sarah Tanembaum | last post by:
Beside its an opensource and supported by community, what's the fundamental differences between PostgreSQL and those high-price commercial database (and some are bloated such as Oracle) from software giant such as Microsoft SQL Server, Oracle, and Sybase? Is PostgreSQL reliable enough to be used for high-end commercial application? Thanks
0
11137
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10742
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
10412
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
9571
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7970
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
7123
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5797
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
2
4215
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3231
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.