Teo Fonrouge访谈

在这个新的采访中,Teo Fonrouge谈到了他在编程方面的开始,他对Harbor项目的贡献,并与我们分享了他对该项目的看法。

您好,我叫Teodoro Fonrouge Orozco,我出生于墨西哥城,但由于某些原因,我的生日卡上说我于1966年10月26日在韦拉克鲁斯州的阿卡尤坎市看到了第一道曙光,实际上总是喜欢我的土地是韦拉克鲁斯(Veracruz)。

我目前居住在墨西哥城郊区的一个小镇,我相信那里的人们比在头昏眼花且拥挤的城市更加平静,谈论我的孩子,我有4个女孩和3个男孩……

我与计算机的关系可以追溯到1985年,那时我才19岁。有一次,我和父母一起去了一家大型百货商店,其中一家商店以一公斤蔬菜的价格向您出售最新技术……确实,那一刻我的印象给我留下了深刻的印象:一台Commodore 16电脑,那是一见钟情……:-),虽然有点奇怪,但由于那一刻我不知道该怎么办电脑,如果我不打算将载人车辆送往火星! …自那时以来,我认为那是计算机所服务的唯一内容…。 哈哈哈

我在学校取得了数学最好的成绩,也许有些运气告诉我,也许我可以拥有一台计算机,作为学生学习微积分,代数的工具,或者至少教加减法,或者也许与她交谈……😀

因此,我恳求父亲给我买那东西,以便在家中仔细研究。我花了整整一个月的时间为他做功功之后,终于做到了……现在,我感到非常愚蠢,但我要做的第一件事就是拥有在家中的计算机上写着一个问题:“克里斯托瓦尔·科隆什么时候发现了美国?” 并给它,当我看到它的答案时我很惊讶:

? 语法错误

准备。

好吧,从那里,从某种程度上讲,这就是我最常从我工作过的所有计算机上获得的答案……哈哈哈哈

几周后,我写了一个小程序,可以在屏幕上制作几何图形,然后将它们混合使用基本语言和汇编语言6502的代码,发送到ENTEIA打印机(与Epson兼容),毕竟它只有16kb的RAM我必须为程序共享的可用内存和图形数据,基本上都存储在一段内存中,该内存段代表显示器上的图形图像,当时在我母亲的电视上……通过该程序,我展示了自己在后来将Commodore电脑商业化的公司办公室里,我很幸运,主任参加了我,并向他展示了我的创作……他问我“你想要多少?”,我说:“我想在这里工作……” “这是我的第一份正式工作,但几年后,我离开了公司,并设立了独立顾问办公室。

我第一次接触Clipper语言是与我提供咨询服务的公司之一,他们有一个用Clipper编写的小程序来控制库存,由于负责的程序员放弃了该项目,因此需要进行一些更改和扩展。 我与Harbour的第一次接触是在2004年,实际上是与他顽强的儿子xHarbour接触的:-),起初我付钱使用 xharbour.com 的服务, 而在我开始使用Harbour不久后,我再也没有看到要付款的理由服务。

从开始使用xHarbour,然后再使用Harbour的那一刻起,我就与用户社区进行了一些接触,提出问题,有时还提供答案。

我认为,为Harbour社区做出贡献的最佳方法是通过社区可以利用的项目,因此2006年我开始编写wxHarbour( https://sourceforge.net/projects/wxharbour/ ),这是一个简单的港口项目。 http://wxwidgets.org 一个用于港口的多平台GUI。

我还进行了一次探索,将Qt用作Harbor(qtHarbour)的GUI平台,但是我很快意识到,我应该直接努力简化应用程序数据结构背后的逻辑,除了Qt并非毫无道理。

2012年,我在sourceforge.net上启动了OORDB项目,然后将其移至GitHub( https://github.com/tfonrouge/oordb ),目的是以一种面向对象的方式管理关系数据库表,因为我认为可以大大简化复杂数据结构的设计,开发和维护。 我目前在制造公司的广泛生产计划和控制项目中使用此方案,此应用程序当前正在运行,并且包含复杂的数据结构,这些数据结构是数据表与组件,制造业务,中心和工作区域,生产发行的结构列表的关联订单/工作订单,来自向客户交付订单的时间表。 此外,使用Arduino连接到运行Raspberry Pi硬件的工作站,可以实时维护有关机械工业监控的信息。 可以使用Web服务通过Internet实时查询该信息:

毫无疑问,OORDB允许我以结构化的方式简化该项目的编程,管理代表文档的类(工作订单,库存元素等),这些类允许创建子类来专门化特定类型的文档,此外,它允许在表之间进行字段描述,索引描述以及关系主子级的描述符。

因此,现在我不需要为应用程序的界面提供多平台GUI,因为我使用简单的Java脚本(AngularJS)通过RESTful模型向数据服务器发出请求,在RESTful模型中,客户端和服务器之间交换JSON文档。

从两年前开始,我一直在努力将xBase数据库迁移到功能更强大的容器中,并且具有更多功能,因此我选择了MongoDb,因此我开始编写用于港口的MongoDb C驱动程序的端口( https:/ /github.com/tfonrouge/hbmongoc), 并且我一直在将驱动程序集成到我的OORDB中。

我目前正在使用OORDB将数据结构从xBase迁移到MongoDb的过程中,取得了很好的结果,并且将该制造应用程序的开发环境从Harbor迁移到了Java。 为此,我已经用Java开发了集成到出色的IDE IntelliJ(https://www.jetbrains.com/idea/)中的应用程序,该应用程序允许我自动生成表,索引,关系描述符的代码以复制我的从Harbor OORDB到Java的数据的结构和逻辑,是我正在为Java编写的OORDB的版本。

我的目的是将该制造应用程序的开发移至Java / MongoDb。

Harbor是一种出色的编程语言,但是它具有一些缺点,这些缺点对我的业务结构至关重要。 我认为主要的缺点是缺乏核心开发人员(我认为他们很少。)来解决问题,编译器中的错误以及实现改进。 有时,当您需要专注于应用程序的开发时,您必须花费时间来解决一些问题。

像IntelliJ这样的IDE不会伤害🙂

一个更广泛,更团结的社区不会受到伤害,我们拥有Harbor和xHarbour……

我知道,我在整个工作中都为客户使用了许多其他编程语言进行编程,但是最近我一直在用Java / JavaScript集中我的项目。

尽管我认为我没有时间去开发其他领域,例如带有AI的专家系统…

无论如何……在某个时刻,我相信它会发生。

拥抱整个Harbour / xHarbour社区