Mối liên hệ giữa Dynamo và lập trình. Có nên học lập trình không?


#1

Gần đây thấy anh em có vẻ trao đổi vấn đề này nhiều nên mình mở topic này để mn cùng bàn luận cụ thể hơn.

Dynamo xuất hiện gần đây, mở ra một phương thức mới trong việc sáng tạo cũng như cách tiếp cận và khai thác mô hình Revit. Lập trình ở đây đó là Python để làm việc với Dynamo , xa hơn là C#, VB.NET để làm Addin. Với sự hỗ trợ của cộng đồng Dynamo, việc tiếp cận các code hay ho, xỷ lý hiệu quả trở nên dễ dàng hơn nhiều.

Lập trình để làm gì ?

Tùy biến, tối hưu hơn cho Dynamo. Với mục đích hỗ trợ giải quyết các vđề còn hạn chế của Revit: rút ngắn quá trình thao tác, quản lý hiển thị, dàn tạo tạo view, xuất nhập thông tin … túm lại những thứ mang tính chất lặp đi lặp lại không cần quá nhiều động não nhưng lại rất tốn thời gian. Với hướng này thì từ Dynamo có thể chuyển hóa thành addin, sử dụng thuận tiện hơn thậm chí là thương mại hóa. Còn nếu linh hoạt ứng dụng thì với Dynamo Player ngày càng được cải tiến cũng sẽ rất phù hợp.

Tương lai đó là thiết kế lập trình trực quan (Visual Programing) tích hợp với các sản phẩm thuần túy về thiết kế như Formit. Tỉ lệ, quy luật về bản chất nó là toán học, việc đưa nó về phương trình, thuật toán tức là trả lại giá trị tự thân của nó. Nếu phương trình tạo nên quy luật thì việc chúng ta design đang làm cố gắng tạo dựng dựa trên kết quả của nó chứ không phải là chính nó tạo nên. Visual Programing liên quan đến Visual Design (hay gọi là design thị giác). Ở đây có 1 điểm thú vị, đó là tính ngẫu nhiên, không tính trước. Nếu với cách truyền thống, dùng sức người thì sẽ tới điểm hạn chế trong các phương án tổ hợp, nhưng với sự giúp sức của máy tính thì ta sẽ ra được vô số phương án chỉ trong tích tắc.

Mối liên hệ giữa Dynamo và lập trình

Như vậy rút lại ra chúng ta có 3 vai trò mình tạm đặt tên như sau:

  • end user - người dùng đầu cuối như KTS, KS. sử dụng Dynamo/Addin phục vụ công việc thiết kế của họ
  • scripter - người sáng tác ra kịch bản Dynamo
  • coder - người lập trình code thuần túy

end user sẽ đặt bài toán cho scripter, scripter sẽ đặt bài toán cho coder. Câu chuyện khó nhằn nó nằm ở đây. Thường không dễ có điều kiện lý tưởng là xuất hiện cả 3 ông đó ngồi vui vẻ trong một căn phòng như vậy. Nên chúng ta sẽ thường kiêm luôn 2-3 vai trò cùng lúc nếu thực sự muốn giải quyết được vấn đề.

Việc có nên học lập trình hay không, tham gia sâu hơn vào quy trình trên thì cái này là tùy khả năng mỗi người, phụ thuộc vào mức độ yêu thích và quyết tâm của họ. Trong quá trình tìm hiểu và trao đổi trên diễn đàn khi thực hiện Dynamo, mình đã gặp những ông nước ngoài là KTS, KS nhưng rất đam mê code. Cái hay của họ là họ thích làm gì thì họ làm cho ra ngô ra khoai, và sẵn sàng chia sẻ ra được cho mọi người cùng biết.

Mình không đồng ý với quan điểm “ông là KTS thì ông chỉ làm thiết kế thôi, code củng để người khác làm”.
Việc mình làm sẽ quyết định mình là ai. Quan trọng là đã làm gì nên tìm hiểu thật sâu và kiên trì theo đuổi đến cùng. :slight_smile:

Anh em có suy nghĩ gì thì cùng đưa ra trao đổi.


#2

Lý do chúng ta nên tìm hiểu về lập trình :blush:

  1. Không ai có thể hiểu mình cần gì bằng chính mình.
  2. Phụ thuộc quá nhiều vào người khác, khi có vấn đề thì tịt, ko biết xử lý thế nào
  3. Chi phí nhân công CNTT làm được sẽ cao, do họ cũng phải tìm hiểu về XD mất thời gian hơn.

Lý do chúng ta không nên tìm hiểu về lập trình :angry:

1.Tìm hiểu 1 cách quá máy móc bài bản dễ gây chán nản, bỏ cuộc mất thời gian.(Đừng học như để trở thành kỹ sư phần mềm)
2. Rất tốn thời gian, ham mê quá lại ăn cả vào thời gian làm việc công ty, lúc nào cũng ngẩn ngẩn ngơ ngơ sao cái code nó ko chạy. Ảnh hưởng đến các vấn đề tâm sinh lý …


#3
  • Theo mình thì nên học nếu công việc của mình cho phép mình thu sếp được thời gian !
    Nhưng nhìn chung KS và KTS đều rất sợ 2 từ “Lập Trình” .Hình như nó là 1 cái gì đó trong tư tưởng là rất khó học , rất khó làm và không phù hợp . Nhưng nhiều người quên mất rằng tất cả KS,KTS đều đã từng lập trình rồi ví ít nhất họ cũng đã lập một bảng tính trong excel để làm đó án , đó chính là lập trình chỉ là thực hiện dễ hơn chút thôi ,trong chương trình học cũng có tới 4 học phần liên quan đến lập trình nên mình khẳng định việc học lập trình không hề khó chỉ là mình thích hay không thôi .
    Chủ yếu nhất vẫn là sở thích vì xác định học lập trình là cực tốn thời gian ,thậm chí vài năm cũng chẳng thấy thóc gạo đâu :smile: . Nhưng ta cũng có thể nghĩ thoáng hơn chút như anh Thành bên VIBIM ấy .Tức là KS,KTS học lập trình là để tìm kiếm các giá trị mới trong ngành xây dựng ,học lập trình là đầu tư cho tương lai (mặc dù chưa biết chết đói lúc nào :smile: ). Chắc ai cũng đang cảm nhận được sức nóng của BIM và rộng hơn là công nghiệp 4.0 mà sức mạnh của 2 cuộc cách mạnh này ngoài con người ra nó chính là công nghệ thông tin cho nên mình nghĩ nếu có cơ hội và thời gian hãy học lập trình , sẽ không thừa đâu mà lo .:v:

#4

Mình thì suy nghĩ khá đơn giản ở vấn đề này.
Rõ ràng những người hiểu nghề thì ai cũng muốn nâng cao hiệu quả, tiết kiệm thời gian và ai cũng hiểu biết về Dynamo (hiểu biết lập trình) thì sẽ tốt hơn rất nhiều.
Nhưng cái khó là ở công việc có cho phép họ đủ thời gian đầu tư thêm 1 cái gì đó hay học đc 1 2 tuần lại bị deadline áp lực hoặc những vấn đề khác ngoài công việc lại bỏ bê.
Ở VN hiện tại vấn đề chuyên môn hóa chỉ thường nằm ở các Công ty lớn vì họ đủ nguồn kinh tế nuôi từng bộ máy riêng biệt, còn các Công ty nhỏ thường sẽ tận dụng triệt để thậm chí vượt quá khả năng nhân viên để làm việc.
Nên tùy từng hoàn cảnh và mục đích có nên đi học hay không thôi.


#5

Chào các anh. Ngôn ngữ mình đang đề cập là Python đúng không ah. Trong môi trường Dynamo thì ngôn ngữ sử dụng nhiều nhất là gì ah


#6

Dynamo dùng duy nhất Python thôi bạn.


#7

Không hẳn làn Python, bạn có thể lập trình C#


#8

Chao cac ban minh ten Son.
Minh dang hoc revit voi dynamo. Minh hoi chut. Neu mot nguoi lap trinh ma hoc kien truc thi se ton nhieu time hon khong ban.


#9

Còn tùy mức độ bạn mong muốn , nếu thành thạo đến mức triển khai bản vẽ chi tiết đẹp mình nghĩ tầm 1 năm với điều kiện ngày nào cũng làm full time với Revit . mình cũng từ bản thân suy ra thôi có thể mình học hơi chậm . Sau khi thành thạo revit sẽ tự hiểu rõ các vấn đề và điểm yếu của Revit và cũng tự có nhu cầu tìm hiểu lập trình để khắc phục . Chúc bạn thành công !